gdi32: Don't free a driver when it's popped from the stack.
[wine] / dlls / opengl32 / opengl_ext.c
1
2 /* Auto-generated file... Do not edit ! */
3
4 #include "config.h"
5 #include "opengl_ext.h"
6 #include "wine/debug.h"
7
8 WINE_DEFAULT_DEBUG_CHANNEL(opengl);
9
10 enum extensions
11 {
12     EXT_glActiveProgramEXT,
13     EXT_glActiveShaderProgram,
14     EXT_glActiveStencilFaceEXT,
15     EXT_glActiveTexture,
16     EXT_glActiveTextureARB,
17     EXT_glActiveVaryingNV,
18     EXT_glAlphaFragmentOp1ATI,
19     EXT_glAlphaFragmentOp2ATI,
20     EXT_glAlphaFragmentOp3ATI,
21     EXT_glApplyTextureEXT,
22     EXT_glAreProgramsResidentNV,
23     EXT_glAreTexturesResidentEXT,
24     EXT_glArrayElementEXT,
25     EXT_glArrayObjectATI,
26     EXT_glAsyncMarkerSGIX,
27     EXT_glAttachObjectARB,
28     EXT_glAttachShader,
29     EXT_glBeginConditionalRender,
30     EXT_glBeginConditionalRenderNV,
31     EXT_glBeginFragmentShaderATI,
32     EXT_glBeginOcclusionQueryNV,
33     EXT_glBeginPerfMonitorAMD,
34     EXT_glBeginQuery,
35     EXT_glBeginQueryARB,
36     EXT_glBeginQueryIndexed,
37     EXT_glBeginTransformFeedback,
38     EXT_glBeginTransformFeedbackEXT,
39     EXT_glBeginTransformFeedbackNV,
40     EXT_glBeginVertexShaderEXT,
41     EXT_glBeginVideoCaptureNV,
42     EXT_glBindAttribLocation,
43     EXT_glBindAttribLocationARB,
44     EXT_glBindBuffer,
45     EXT_glBindBufferARB,
46     EXT_glBindBufferBase,
47     EXT_glBindBufferBaseEXT,
48     EXT_glBindBufferBaseNV,
49     EXT_glBindBufferOffsetEXT,
50     EXT_glBindBufferOffsetNV,
51     EXT_glBindBufferRange,
52     EXT_glBindBufferRangeEXT,
53     EXT_glBindBufferRangeNV,
54     EXT_glBindFragDataLocation,
55     EXT_glBindFragDataLocationEXT,
56     EXT_glBindFragDataLocationIndexed,
57     EXT_glBindFragmentShaderATI,
58     EXT_glBindFramebuffer,
59     EXT_glBindFramebufferEXT,
60     EXT_glBindImageTextureEXT,
61     EXT_glBindLightParameterEXT,
62     EXT_glBindMaterialParameterEXT,
63     EXT_glBindMultiTextureEXT,
64     EXT_glBindParameterEXT,
65     EXT_glBindProgramARB,
66     EXT_glBindProgramNV,
67     EXT_glBindProgramPipeline,
68     EXT_glBindRenderbuffer,
69     EXT_glBindRenderbufferEXT,
70     EXT_glBindSampler,
71     EXT_glBindTexGenParameterEXT,
72     EXT_glBindTextureEXT,
73     EXT_glBindTextureUnitParameterEXT,
74     EXT_glBindTransformFeedback,
75     EXT_glBindTransformFeedbackNV,
76     EXT_glBindVertexArray,
77     EXT_glBindVertexArrayAPPLE,
78     EXT_glBindVertexShaderEXT,
79     EXT_glBindVideoCaptureStreamBufferNV,
80     EXT_glBindVideoCaptureStreamTextureNV,
81     EXT_glBinormal3bEXT,
82     EXT_glBinormal3bvEXT,
83     EXT_glBinormal3dEXT,
84     EXT_glBinormal3dvEXT,
85     EXT_glBinormal3fEXT,
86     EXT_glBinormal3fvEXT,
87     EXT_glBinormal3iEXT,
88     EXT_glBinormal3ivEXT,
89     EXT_glBinormal3sEXT,
90     EXT_glBinormal3svEXT,
91     EXT_glBinormalPointerEXT,
92     EXT_glBlendColor,
93     EXT_glBlendColorEXT,
94     EXT_glBlendEquation,
95     EXT_glBlendEquationEXT,
96     EXT_glBlendEquationIndexedAMD,
97     EXT_glBlendEquationSeparate,
98     EXT_glBlendEquationSeparateEXT,
99     EXT_glBlendEquationSeparateIndexedAMD,
100     EXT_glBlendEquationSeparatei,
101     EXT_glBlendEquationSeparateiARB,
102     EXT_glBlendEquationi,
103     EXT_glBlendEquationiARB,
104     EXT_glBlendFuncIndexedAMD,
105     EXT_glBlendFuncSeparate,
106     EXT_glBlendFuncSeparateEXT,
107     EXT_glBlendFuncSeparateINGR,
108     EXT_glBlendFuncSeparateIndexedAMD,
109     EXT_glBlendFuncSeparatei,
110     EXT_glBlendFuncSeparateiARB,
111     EXT_glBlendFunci,
112     EXT_glBlendFunciARB,
113     EXT_glBlitFramebuffer,
114     EXT_glBlitFramebufferEXT,
115     EXT_glBufferAddressRangeNV,
116     EXT_glBufferData,
117     EXT_glBufferDataARB,
118     EXT_glBufferParameteriAPPLE,
119     EXT_glBufferRegionEnabled,
120     EXT_glBufferSubData,
121     EXT_glBufferSubDataARB,
122     EXT_glCheckFramebufferStatus,
123     EXT_glCheckFramebufferStatusEXT,
124     EXT_glCheckNamedFramebufferStatusEXT,
125     EXT_glClampColor,
126     EXT_glClampColorARB,
127     EXT_glClearBufferfi,
128     EXT_glClearBufferfv,
129     EXT_glClearBufferiv,
130     EXT_glClearBufferuiv,
131     EXT_glClearColorIiEXT,
132     EXT_glClearColorIuiEXT,
133     EXT_glClearDepthdNV,
134     EXT_glClearDepthf,
135     EXT_glClientActiveTexture,
136     EXT_glClientActiveTextureARB,
137     EXT_glClientActiveVertexStreamATI,
138     EXT_glClientAttribDefaultEXT,
139     EXT_glClientWaitSync,
140     EXT_glColor3fVertex3fSUN,
141     EXT_glColor3fVertex3fvSUN,
142     EXT_glColor3hNV,
143     EXT_glColor3hvNV,
144     EXT_glColor4fNormal3fVertex3fSUN,
145     EXT_glColor4fNormal3fVertex3fvSUN,
146     EXT_glColor4hNV,
147     EXT_glColor4hvNV,
148     EXT_glColor4ubVertex2fSUN,
149     EXT_glColor4ubVertex2fvSUN,
150     EXT_glColor4ubVertex3fSUN,
151     EXT_glColor4ubVertex3fvSUN,
152     EXT_glColorFormatNV,
153     EXT_glColorFragmentOp1ATI,
154     EXT_glColorFragmentOp2ATI,
155     EXT_glColorFragmentOp3ATI,
156     EXT_glColorMaskIndexedEXT,
157     EXT_glColorMaski,
158     EXT_glColorP3ui,
159     EXT_glColorP3uiv,
160     EXT_glColorP4ui,
161     EXT_glColorP4uiv,
162     EXT_glColorPointerEXT,
163     EXT_glColorPointerListIBM,
164     EXT_glColorPointervINTEL,
165     EXT_glColorSubTable,
166     EXT_glColorSubTableEXT,
167     EXT_glColorTable,
168     EXT_glColorTableEXT,
169     EXT_glColorTableParameterfv,
170     EXT_glColorTableParameterfvSGI,
171     EXT_glColorTableParameteriv,
172     EXT_glColorTableParameterivSGI,
173     EXT_glColorTableSGI,
174     EXT_glCombinerInputNV,
175     EXT_glCombinerOutputNV,
176     EXT_glCombinerParameterfNV,
177     EXT_glCombinerParameterfvNV,
178     EXT_glCombinerParameteriNV,
179     EXT_glCombinerParameterivNV,
180     EXT_glCombinerStageParameterfvNV,
181     EXT_glCompileShader,
182     EXT_glCompileShaderARB,
183     EXT_glCompileShaderIncludeARB,
184     EXT_glCompressedMultiTexImage1DEXT,
185     EXT_glCompressedMultiTexImage2DEXT,
186     EXT_glCompressedMultiTexImage3DEXT,
187     EXT_glCompressedMultiTexSubImage1DEXT,
188     EXT_glCompressedMultiTexSubImage2DEXT,
189     EXT_glCompressedMultiTexSubImage3DEXT,
190     EXT_glCompressedTexImage1D,
191     EXT_glCompressedTexImage1DARB,
192     EXT_glCompressedTexImage2D,
193     EXT_glCompressedTexImage2DARB,
194     EXT_glCompressedTexImage3D,
195     EXT_glCompressedTexImage3DARB,
196     EXT_glCompressedTexSubImage1D,
197     EXT_glCompressedTexSubImage1DARB,
198     EXT_glCompressedTexSubImage2D,
199     EXT_glCompressedTexSubImage2DARB,
200     EXT_glCompressedTexSubImage3D,
201     EXT_glCompressedTexSubImage3DARB,
202     EXT_glCompressedTextureImage1DEXT,
203     EXT_glCompressedTextureImage2DEXT,
204     EXT_glCompressedTextureImage3DEXT,
205     EXT_glCompressedTextureSubImage1DEXT,
206     EXT_glCompressedTextureSubImage2DEXT,
207     EXT_glCompressedTextureSubImage3DEXT,
208     EXT_glConvolutionFilter1D,
209     EXT_glConvolutionFilter1DEXT,
210     EXT_glConvolutionFilter2D,
211     EXT_glConvolutionFilter2DEXT,
212     EXT_glConvolutionParameterf,
213     EXT_glConvolutionParameterfEXT,
214     EXT_glConvolutionParameterfv,
215     EXT_glConvolutionParameterfvEXT,
216     EXT_glConvolutionParameteri,
217     EXT_glConvolutionParameteriEXT,
218     EXT_glConvolutionParameteriv,
219     EXT_glConvolutionParameterivEXT,
220     EXT_glCopyBufferSubData,
221     EXT_glCopyColorSubTable,
222     EXT_glCopyColorSubTableEXT,
223     EXT_glCopyColorTable,
224     EXT_glCopyColorTableSGI,
225     EXT_glCopyConvolutionFilter1D,
226     EXT_glCopyConvolutionFilter1DEXT,
227     EXT_glCopyConvolutionFilter2D,
228     EXT_glCopyConvolutionFilter2DEXT,
229     EXT_glCopyImageSubDataNV,
230     EXT_glCopyMultiTexImage1DEXT,
231     EXT_glCopyMultiTexImage2DEXT,
232     EXT_glCopyMultiTexSubImage1DEXT,
233     EXT_glCopyMultiTexSubImage2DEXT,
234     EXT_glCopyMultiTexSubImage3DEXT,
235     EXT_glCopyTexImage1DEXT,
236     EXT_glCopyTexImage2DEXT,
237     EXT_glCopyTexSubImage1DEXT,
238     EXT_glCopyTexSubImage2DEXT,
239     EXT_glCopyTexSubImage3D,
240     EXT_glCopyTexSubImage3DEXT,
241     EXT_glCopyTextureImage1DEXT,
242     EXT_glCopyTextureImage2DEXT,
243     EXT_glCopyTextureSubImage1DEXT,
244     EXT_glCopyTextureSubImage2DEXT,
245     EXT_glCopyTextureSubImage3DEXT,
246     EXT_glCreateProgram,
247     EXT_glCreateProgramObjectARB,
248     EXT_glCreateShader,
249     EXT_glCreateShaderObjectARB,
250     EXT_glCreateShaderProgramEXT,
251     EXT_glCreateShaderProgramv,
252     EXT_glCreateSyncFromCLeventARB,
253     EXT_glCullParameterdvEXT,
254     EXT_glCullParameterfvEXT,
255     EXT_glCurrentPaletteMatrixARB,
256     EXT_glDebugMessageCallbackAMD,
257     EXT_glDebugMessageCallbackARB,
258     EXT_glDebugMessageControlARB,
259     EXT_glDebugMessageEnableAMD,
260     EXT_glDebugMessageInsertAMD,
261     EXT_glDebugMessageInsertARB,
262     EXT_glDeformSGIX,
263     EXT_glDeformationMap3dSGIX,
264     EXT_glDeformationMap3fSGIX,
265     EXT_glDeleteAsyncMarkersSGIX,
266     EXT_glDeleteBufferRegion,
267     EXT_glDeleteBuffers,
268     EXT_glDeleteBuffersARB,
269     EXT_glDeleteFencesAPPLE,
270     EXT_glDeleteFencesNV,
271     EXT_glDeleteFragmentShaderATI,
272     EXT_glDeleteFramebuffers,
273     EXT_glDeleteFramebuffersEXT,
274     EXT_glDeleteNamedStringARB,
275     EXT_glDeleteNamesAMD,
276     EXT_glDeleteObjectARB,
277     EXT_glDeleteObjectBufferATI,
278     EXT_glDeleteOcclusionQueriesNV,
279     EXT_glDeletePerfMonitorsAMD,
280     EXT_glDeleteProgram,
281     EXT_glDeleteProgramPipelines,
282     EXT_glDeleteProgramsARB,
283     EXT_glDeleteProgramsNV,
284     EXT_glDeleteQueries,
285     EXT_glDeleteQueriesARB,
286     EXT_glDeleteRenderbuffers,
287     EXT_glDeleteRenderbuffersEXT,
288     EXT_glDeleteSamplers,
289     EXT_glDeleteShader,
290     EXT_glDeleteSync,
291     EXT_glDeleteTexturesEXT,
292     EXT_glDeleteTransformFeedbacks,
293     EXT_glDeleteTransformFeedbacksNV,
294     EXT_glDeleteVertexArrays,
295     EXT_glDeleteVertexArraysAPPLE,
296     EXT_glDeleteVertexShaderEXT,
297     EXT_glDepthBoundsEXT,
298     EXT_glDepthBoundsdNV,
299     EXT_glDepthRangeArrayv,
300     EXT_glDepthRangeIndexed,
301     EXT_glDepthRangedNV,
302     EXT_glDepthRangef,
303     EXT_glDetachObjectARB,
304     EXT_glDetachShader,
305     EXT_glDetailTexFuncSGIS,
306     EXT_glDisableClientStateIndexedEXT,
307     EXT_glDisableIndexedEXT,
308     EXT_glDisableVariantClientStateEXT,
309     EXT_glDisableVertexAttribAPPLE,
310     EXT_glDisableVertexAttribArray,
311     EXT_glDisableVertexAttribArrayARB,
312     EXT_glDisablei,
313     EXT_glDrawArraysEXT,
314     EXT_glDrawArraysIndirect,
315     EXT_glDrawArraysInstanced,
316     EXT_glDrawArraysInstancedARB,
317     EXT_glDrawArraysInstancedEXT,
318     EXT_glDrawBufferRegion,
319     EXT_glDrawBuffers,
320     EXT_glDrawBuffersARB,
321     EXT_glDrawBuffersATI,
322     EXT_glDrawElementArrayAPPLE,
323     EXT_glDrawElementArrayATI,
324     EXT_glDrawElementsBaseVertex,
325     EXT_glDrawElementsIndirect,
326     EXT_glDrawElementsInstanced,
327     EXT_glDrawElementsInstancedARB,
328     EXT_glDrawElementsInstancedBaseVertex,
329     EXT_glDrawElementsInstancedEXT,
330     EXT_glDrawMeshArraysSUN,
331     EXT_glDrawRangeElementArrayAPPLE,
332     EXT_glDrawRangeElementArrayATI,
333     EXT_glDrawRangeElements,
334     EXT_glDrawRangeElementsBaseVertex,
335     EXT_glDrawRangeElementsEXT,
336     EXT_glDrawTransformFeedback,
337     EXT_glDrawTransformFeedbackNV,
338     EXT_glDrawTransformFeedbackStream,
339     EXT_glEdgeFlagFormatNV,
340     EXT_glEdgeFlagPointerEXT,
341     EXT_glEdgeFlagPointerListIBM,
342     EXT_glElementPointerAPPLE,
343     EXT_glElementPointerATI,
344     EXT_glEnableClientStateIndexedEXT,
345     EXT_glEnableIndexedEXT,
346     EXT_glEnableVariantClientStateEXT,
347     EXT_glEnableVertexAttribAPPLE,
348     EXT_glEnableVertexAttribArray,
349     EXT_glEnableVertexAttribArrayARB,
350     EXT_glEnablei,
351     EXT_glEndConditionalRender,
352     EXT_glEndConditionalRenderNV,
353     EXT_glEndFragmentShaderATI,
354     EXT_glEndOcclusionQueryNV,
355     EXT_glEndPerfMonitorAMD,
356     EXT_glEndQuery,
357     EXT_glEndQueryARB,
358     EXT_glEndQueryIndexed,
359     EXT_glEndTransformFeedback,
360     EXT_glEndTransformFeedbackEXT,
361     EXT_glEndTransformFeedbackNV,
362     EXT_glEndVertexShaderEXT,
363     EXT_glEndVideoCaptureNV,
364     EXT_glEvalMapsNV,
365     EXT_glExecuteProgramNV,
366     EXT_glExtractComponentEXT,
367     EXT_glFenceSync,
368     EXT_glFinalCombinerInputNV,
369     EXT_glFinishAsyncSGIX,
370     EXT_glFinishFenceAPPLE,
371     EXT_glFinishFenceNV,
372     EXT_glFinishObjectAPPLE,
373     EXT_glFinishTextureSUNX,
374     EXT_glFlushMappedBufferRange,
375     EXT_glFlushMappedBufferRangeAPPLE,
376     EXT_glFlushMappedNamedBufferRangeEXT,
377     EXT_glFlushPixelDataRangeNV,
378     EXT_glFlushRasterSGIX,
379     EXT_glFlushVertexArrayRangeAPPLE,
380     EXT_glFlushVertexArrayRangeNV,
381     EXT_glFogCoordFormatNV,
382     EXT_glFogCoordPointer,
383     EXT_glFogCoordPointerEXT,
384     EXT_glFogCoordPointerListIBM,
385     EXT_glFogCoordd,
386     EXT_glFogCoorddEXT,
387     EXT_glFogCoorddv,
388     EXT_glFogCoorddvEXT,
389     EXT_glFogCoordf,
390     EXT_glFogCoordfEXT,
391     EXT_glFogCoordfv,
392     EXT_glFogCoordfvEXT,
393     EXT_glFogCoordhNV,
394     EXT_glFogCoordhvNV,
395     EXT_glFogFuncSGIS,
396     EXT_glFragmentColorMaterialSGIX,
397     EXT_glFragmentLightModelfSGIX,
398     EXT_glFragmentLightModelfvSGIX,
399     EXT_glFragmentLightModeliSGIX,
400     EXT_glFragmentLightModelivSGIX,
401     EXT_glFragmentLightfSGIX,
402     EXT_glFragmentLightfvSGIX,
403     EXT_glFragmentLightiSGIX,
404     EXT_glFragmentLightivSGIX,
405     EXT_glFragmentMaterialfSGIX,
406     EXT_glFragmentMaterialfvSGIX,
407     EXT_glFragmentMaterialiSGIX,
408     EXT_glFragmentMaterialivSGIX,
409     EXT_glFrameTerminatorGREMEDY,
410     EXT_glFrameZoomSGIX,
411     EXT_glFramebufferDrawBufferEXT,
412     EXT_glFramebufferDrawBuffersEXT,
413     EXT_glFramebufferReadBufferEXT,
414     EXT_glFramebufferRenderbuffer,
415     EXT_glFramebufferRenderbufferEXT,
416     EXT_glFramebufferTexture,
417     EXT_glFramebufferTexture1D,
418     EXT_glFramebufferTexture1DEXT,
419     EXT_glFramebufferTexture2D,
420     EXT_glFramebufferTexture2DEXT,
421     EXT_glFramebufferTexture3D,
422     EXT_glFramebufferTexture3DEXT,
423     EXT_glFramebufferTextureARB,
424     EXT_glFramebufferTextureEXT,
425     EXT_glFramebufferTextureFaceARB,
426     EXT_glFramebufferTextureFaceEXT,
427     EXT_glFramebufferTextureLayer,
428     EXT_glFramebufferTextureLayerARB,
429     EXT_glFramebufferTextureLayerEXT,
430     EXT_glFreeObjectBufferATI,
431     EXT_glGenAsyncMarkersSGIX,
432     EXT_glGenBuffers,
433     EXT_glGenBuffersARB,
434     EXT_glGenFencesAPPLE,
435     EXT_glGenFencesNV,
436     EXT_glGenFragmentShadersATI,
437     EXT_glGenFramebuffers,
438     EXT_glGenFramebuffersEXT,
439     EXT_glGenNamesAMD,
440     EXT_glGenOcclusionQueriesNV,
441     EXT_glGenPerfMonitorsAMD,
442     EXT_glGenProgramPipelines,
443     EXT_glGenProgramsARB,
444     EXT_glGenProgramsNV,
445     EXT_glGenQueries,
446     EXT_glGenQueriesARB,
447     EXT_glGenRenderbuffers,
448     EXT_glGenRenderbuffersEXT,
449     EXT_glGenSamplers,
450     EXT_glGenSymbolsEXT,
451     EXT_glGenTexturesEXT,
452     EXT_glGenTransformFeedbacks,
453     EXT_glGenTransformFeedbacksNV,
454     EXT_glGenVertexArrays,
455     EXT_glGenVertexArraysAPPLE,
456     EXT_glGenVertexShadersEXT,
457     EXT_glGenerateMipmap,
458     EXT_glGenerateMipmapEXT,
459     EXT_glGenerateMultiTexMipmapEXT,
460     EXT_glGenerateTextureMipmapEXT,
461     EXT_glGetActiveAttrib,
462     EXT_glGetActiveAttribARB,
463     EXT_glGetActiveSubroutineName,
464     EXT_glGetActiveSubroutineUniformName,
465     EXT_glGetActiveSubroutineUniformiv,
466     EXT_glGetActiveUniform,
467     EXT_glGetActiveUniformARB,
468     EXT_glGetActiveUniformBlockName,
469     EXT_glGetActiveUniformBlockiv,
470     EXT_glGetActiveUniformName,
471     EXT_glGetActiveUniformsiv,
472     EXT_glGetActiveVaryingNV,
473     EXT_glGetArrayObjectfvATI,
474     EXT_glGetArrayObjectivATI,
475     EXT_glGetAttachedObjectsARB,
476     EXT_glGetAttachedShaders,
477     EXT_glGetAttribLocation,
478     EXT_glGetAttribLocationARB,
479     EXT_glGetBooleanIndexedvEXT,
480     EXT_glGetBooleani_v,
481     EXT_glGetBufferParameteri64v,
482     EXT_glGetBufferParameteriv,
483     EXT_glGetBufferParameterivARB,
484     EXT_glGetBufferParameterui64vNV,
485     EXT_glGetBufferPointerv,
486     EXT_glGetBufferPointervARB,
487     EXT_glGetBufferSubData,
488     EXT_glGetBufferSubDataARB,
489     EXT_glGetColorTable,
490     EXT_glGetColorTableEXT,
491     EXT_glGetColorTableParameterfv,
492     EXT_glGetColorTableParameterfvEXT,
493     EXT_glGetColorTableParameterfvSGI,
494     EXT_glGetColorTableParameteriv,
495     EXT_glGetColorTableParameterivEXT,
496     EXT_glGetColorTableParameterivSGI,
497     EXT_glGetColorTableSGI,
498     EXT_glGetCombinerInputParameterfvNV,
499     EXT_glGetCombinerInputParameterivNV,
500     EXT_glGetCombinerOutputParameterfvNV,
501     EXT_glGetCombinerOutputParameterivNV,
502     EXT_glGetCombinerStageParameterfvNV,
503     EXT_glGetCompressedMultiTexImageEXT,
504     EXT_glGetCompressedTexImage,
505     EXT_glGetCompressedTexImageARB,
506     EXT_glGetCompressedTextureImageEXT,
507     EXT_glGetConvolutionFilter,
508     EXT_glGetConvolutionFilterEXT,
509     EXT_glGetConvolutionParameterfv,
510     EXT_glGetConvolutionParameterfvEXT,
511     EXT_glGetConvolutionParameteriv,
512     EXT_glGetConvolutionParameterivEXT,
513     EXT_glGetDebugMessageLogAMD,
514     EXT_glGetDebugMessageLogARB,
515     EXT_glGetDetailTexFuncSGIS,
516     EXT_glGetDoubleIndexedvEXT,
517     EXT_glGetDoublei_v,
518     EXT_glGetFenceivNV,
519     EXT_glGetFinalCombinerInputParameterfvNV,
520     EXT_glGetFinalCombinerInputParameterivNV,
521     EXT_glGetFloatIndexedvEXT,
522     EXT_glGetFloati_v,
523     EXT_glGetFogFuncSGIS,
524     EXT_glGetFragDataIndex,
525     EXT_glGetFragDataLocation,
526     EXT_glGetFragDataLocationEXT,
527     EXT_glGetFragmentLightfvSGIX,
528     EXT_glGetFragmentLightivSGIX,
529     EXT_glGetFragmentMaterialfvSGIX,
530     EXT_glGetFragmentMaterialivSGIX,
531     EXT_glGetFramebufferAttachmentParameteriv,
532     EXT_glGetFramebufferAttachmentParameterivEXT,
533     EXT_glGetFramebufferParameterivEXT,
534     EXT_glGetGraphicsResetStatusARB,
535     EXT_glGetHandleARB,
536     EXT_glGetHistogram,
537     EXT_glGetHistogramEXT,
538     EXT_glGetHistogramParameterfv,
539     EXT_glGetHistogramParameterfvEXT,
540     EXT_glGetHistogramParameteriv,
541     EXT_glGetHistogramParameterivEXT,
542     EXT_glGetImageTransformParameterfvHP,
543     EXT_glGetImageTransformParameterivHP,
544     EXT_glGetInfoLogARB,
545     EXT_glGetInstrumentsSGIX,
546     EXT_glGetInteger64i_v,
547     EXT_glGetInteger64v,
548     EXT_glGetIntegerIndexedvEXT,
549     EXT_glGetIntegeri_v,
550     EXT_glGetIntegerui64i_vNV,
551     EXT_glGetIntegerui64vNV,
552     EXT_glGetInvariantBooleanvEXT,
553     EXT_glGetInvariantFloatvEXT,
554     EXT_glGetInvariantIntegervEXT,
555     EXT_glGetListParameterfvSGIX,
556     EXT_glGetListParameterivSGIX,
557     EXT_glGetLocalConstantBooleanvEXT,
558     EXT_glGetLocalConstantFloatvEXT,
559     EXT_glGetLocalConstantIntegervEXT,
560     EXT_glGetMapAttribParameterfvNV,
561     EXT_glGetMapAttribParameterivNV,
562     EXT_glGetMapControlPointsNV,
563     EXT_glGetMapParameterfvNV,
564     EXT_glGetMapParameterivNV,
565     EXT_glGetMinmax,
566     EXT_glGetMinmaxEXT,
567     EXT_glGetMinmaxParameterfv,
568     EXT_glGetMinmaxParameterfvEXT,
569     EXT_glGetMinmaxParameteriv,
570     EXT_glGetMinmaxParameterivEXT,
571     EXT_glGetMultiTexEnvfvEXT,
572     EXT_glGetMultiTexEnvivEXT,
573     EXT_glGetMultiTexGendvEXT,
574     EXT_glGetMultiTexGenfvEXT,
575     EXT_glGetMultiTexGenivEXT,
576     EXT_glGetMultiTexImageEXT,
577     EXT_glGetMultiTexLevelParameterfvEXT,
578     EXT_glGetMultiTexLevelParameterivEXT,
579     EXT_glGetMultiTexParameterIivEXT,
580     EXT_glGetMultiTexParameterIuivEXT,
581     EXT_glGetMultiTexParameterfvEXT,
582     EXT_glGetMultiTexParameterivEXT,
583     EXT_glGetMultisamplefv,
584     EXT_glGetMultisamplefvNV,
585     EXT_glGetNamedBufferParameterivEXT,
586     EXT_glGetNamedBufferParameterui64vNV,
587     EXT_glGetNamedBufferPointervEXT,
588     EXT_glGetNamedBufferSubDataEXT,
589     EXT_glGetNamedFramebufferAttachmentParameterivEXT,
590     EXT_glGetNamedProgramLocalParameterIivEXT,
591     EXT_glGetNamedProgramLocalParameterIuivEXT,
592     EXT_glGetNamedProgramLocalParameterdvEXT,
593     EXT_glGetNamedProgramLocalParameterfvEXT,
594     EXT_glGetNamedProgramStringEXT,
595     EXT_glGetNamedProgramivEXT,
596     EXT_glGetNamedRenderbufferParameterivEXT,
597     EXT_glGetNamedStringARB,
598     EXT_glGetNamedStringivARB,
599     EXT_glGetObjectBufferfvATI,
600     EXT_glGetObjectBufferivATI,
601     EXT_glGetObjectParameterfvARB,
602     EXT_glGetObjectParameterivAPPLE,
603     EXT_glGetObjectParameterivARB,
604     EXT_glGetOcclusionQueryivNV,
605     EXT_glGetOcclusionQueryuivNV,
606     EXT_glGetPerfMonitorCounterDataAMD,
607     EXT_glGetPerfMonitorCounterInfoAMD,
608     EXT_glGetPerfMonitorCounterStringAMD,
609     EXT_glGetPerfMonitorCountersAMD,
610     EXT_glGetPerfMonitorGroupStringAMD,
611     EXT_glGetPerfMonitorGroupsAMD,
612     EXT_glGetPixelTexGenParameterfvSGIS,
613     EXT_glGetPixelTexGenParameterivSGIS,
614     EXT_glGetPointerIndexedvEXT,
615     EXT_glGetPointervEXT,
616     EXT_glGetProgramBinary,
617     EXT_glGetProgramEnvParameterIivNV,
618     EXT_glGetProgramEnvParameterIuivNV,
619     EXT_glGetProgramEnvParameterdvARB,
620     EXT_glGetProgramEnvParameterfvARB,
621     EXT_glGetProgramInfoLog,
622     EXT_glGetProgramLocalParameterIivNV,
623     EXT_glGetProgramLocalParameterIuivNV,
624     EXT_glGetProgramLocalParameterdvARB,
625     EXT_glGetProgramLocalParameterfvARB,
626     EXT_glGetProgramNamedParameterdvNV,
627     EXT_glGetProgramNamedParameterfvNV,
628     EXT_glGetProgramParameterdvNV,
629     EXT_glGetProgramParameterfvNV,
630     EXT_glGetProgramPipelineInfoLog,
631     EXT_glGetProgramPipelineiv,
632     EXT_glGetProgramStageiv,
633     EXT_glGetProgramStringARB,
634     EXT_glGetProgramStringNV,
635     EXT_glGetProgramSubroutineParameteruivNV,
636     EXT_glGetProgramiv,
637     EXT_glGetProgramivARB,
638     EXT_glGetProgramivNV,
639     EXT_glGetQueryIndexediv,
640     EXT_glGetQueryObjecti64v,
641     EXT_glGetQueryObjecti64vEXT,
642     EXT_glGetQueryObjectiv,
643     EXT_glGetQueryObjectivARB,
644     EXT_glGetQueryObjectui64v,
645     EXT_glGetQueryObjectui64vEXT,
646     EXT_glGetQueryObjectuiv,
647     EXT_glGetQueryObjectuivARB,
648     EXT_glGetQueryiv,
649     EXT_glGetQueryivARB,
650     EXT_glGetRenderbufferParameteriv,
651     EXT_glGetRenderbufferParameterivEXT,
652     EXT_glGetSamplerParameterIiv,
653     EXT_glGetSamplerParameterIuiv,
654     EXT_glGetSamplerParameterfv,
655     EXT_glGetSamplerParameteriv,
656     EXT_glGetSeparableFilter,
657     EXT_glGetSeparableFilterEXT,
658     EXT_glGetShaderInfoLog,
659     EXT_glGetShaderPrecisionFormat,
660     EXT_glGetShaderSource,
661     EXT_glGetShaderSourceARB,
662     EXT_glGetShaderiv,
663     EXT_glGetSharpenTexFuncSGIS,
664     EXT_glGetStringi,
665     EXT_glGetSubroutineIndex,
666     EXT_glGetSubroutineUniformLocation,
667     EXT_glGetSynciv,
668     EXT_glGetTexBumpParameterfvATI,
669     EXT_glGetTexBumpParameterivATI,
670     EXT_glGetTexFilterFuncSGIS,
671     EXT_glGetTexParameterIiv,
672     EXT_glGetTexParameterIivEXT,
673     EXT_glGetTexParameterIuiv,
674     EXT_glGetTexParameterIuivEXT,
675     EXT_glGetTexParameterPointervAPPLE,
676     EXT_glGetTextureImageEXT,
677     EXT_glGetTextureLevelParameterfvEXT,
678     EXT_glGetTextureLevelParameterivEXT,
679     EXT_glGetTextureParameterIivEXT,
680     EXT_glGetTextureParameterIuivEXT,
681     EXT_glGetTextureParameterfvEXT,
682     EXT_glGetTextureParameterivEXT,
683     EXT_glGetTrackMatrixivNV,
684     EXT_glGetTransformFeedbackVarying,
685     EXT_glGetTransformFeedbackVaryingEXT,
686     EXT_glGetTransformFeedbackVaryingNV,
687     EXT_glGetUniformBlockIndex,
688     EXT_glGetUniformBufferSizeEXT,
689     EXT_glGetUniformIndices,
690     EXT_glGetUniformLocation,
691     EXT_glGetUniformLocationARB,
692     EXT_glGetUniformOffsetEXT,
693     EXT_glGetUniformSubroutineuiv,
694     EXT_glGetUniformdv,
695     EXT_glGetUniformfv,
696     EXT_glGetUniformfvARB,
697     EXT_glGetUniformi64vNV,
698     EXT_glGetUniformiv,
699     EXT_glGetUniformivARB,
700     EXT_glGetUniformui64vNV,
701     EXT_glGetUniformuiv,
702     EXT_glGetUniformuivEXT,
703     EXT_glGetVariantArrayObjectfvATI,
704     EXT_glGetVariantArrayObjectivATI,
705     EXT_glGetVariantBooleanvEXT,
706     EXT_glGetVariantFloatvEXT,
707     EXT_glGetVariantIntegervEXT,
708     EXT_glGetVariantPointervEXT,
709     EXT_glGetVaryingLocationNV,
710     EXT_glGetVertexAttribArrayObjectfvATI,
711     EXT_glGetVertexAttribArrayObjectivATI,
712     EXT_glGetVertexAttribIiv,
713     EXT_glGetVertexAttribIivEXT,
714     EXT_glGetVertexAttribIuiv,
715     EXT_glGetVertexAttribIuivEXT,
716     EXT_glGetVertexAttribLdv,
717     EXT_glGetVertexAttribLdvEXT,
718     EXT_glGetVertexAttribLi64vNV,
719     EXT_glGetVertexAttribLui64vNV,
720     EXT_glGetVertexAttribPointerv,
721     EXT_glGetVertexAttribPointervARB,
722     EXT_glGetVertexAttribPointervNV,
723     EXT_glGetVertexAttribdv,
724     EXT_glGetVertexAttribdvARB,
725     EXT_glGetVertexAttribdvNV,
726     EXT_glGetVertexAttribfv,
727     EXT_glGetVertexAttribfvARB,
728     EXT_glGetVertexAttribfvNV,
729     EXT_glGetVertexAttribiv,
730     EXT_glGetVertexAttribivARB,
731     EXT_glGetVertexAttribivNV,
732     EXT_glGetVideoCaptureStreamdvNV,
733     EXT_glGetVideoCaptureStreamfvNV,
734     EXT_glGetVideoCaptureStreamivNV,
735     EXT_glGetVideoCaptureivNV,
736     EXT_glGetVideoi64vNV,
737     EXT_glGetVideoivNV,
738     EXT_glGetVideoui64vNV,
739     EXT_glGetVideouivNV,
740     EXT_glGetnColorTableARB,
741     EXT_glGetnCompressedTexImageARB,
742     EXT_glGetnConvolutionFilterARB,
743     EXT_glGetnHistogramARB,
744     EXT_glGetnMapdvARB,
745     EXT_glGetnMapfvARB,
746     EXT_glGetnMapivARB,
747     EXT_glGetnMinmaxARB,
748     EXT_glGetnPixelMapfvARB,
749     EXT_glGetnPixelMapuivARB,
750     EXT_glGetnPixelMapusvARB,
751     EXT_glGetnPolygonStippleARB,
752     EXT_glGetnSeparableFilterARB,
753     EXT_glGetnTexImageARB,
754     EXT_glGetnUniformdvARB,
755     EXT_glGetnUniformfvARB,
756     EXT_glGetnUniformivARB,
757     EXT_glGetnUniformuivARB,
758     EXT_glGlobalAlphaFactorbSUN,
759     EXT_glGlobalAlphaFactordSUN,
760     EXT_glGlobalAlphaFactorfSUN,
761     EXT_glGlobalAlphaFactoriSUN,
762     EXT_glGlobalAlphaFactorsSUN,
763     EXT_glGlobalAlphaFactorubSUN,
764     EXT_glGlobalAlphaFactoruiSUN,
765     EXT_glGlobalAlphaFactorusSUN,
766     EXT_glHintPGI,
767     EXT_glHistogram,
768     EXT_glHistogramEXT,
769     EXT_glIglooInterfaceSGIX,
770     EXT_glImageTransformParameterfHP,
771     EXT_glImageTransformParameterfvHP,
772     EXT_glImageTransformParameteriHP,
773     EXT_glImageTransformParameterivHP,
774     EXT_glIndexFormatNV,
775     EXT_glIndexFuncEXT,
776     EXT_glIndexMaterialEXT,
777     EXT_glIndexPointerEXT,
778     EXT_glIndexPointerListIBM,
779     EXT_glInsertComponentEXT,
780     EXT_glInstrumentsBufferSGIX,
781     EXT_glIsAsyncMarkerSGIX,
782     EXT_glIsBuffer,
783     EXT_glIsBufferARB,
784     EXT_glIsBufferResidentNV,
785     EXT_glIsEnabledIndexedEXT,
786     EXT_glIsEnabledi,
787     EXT_glIsFenceAPPLE,
788     EXT_glIsFenceNV,
789     EXT_glIsFramebuffer,
790     EXT_glIsFramebufferEXT,
791     EXT_glIsNameAMD,
792     EXT_glIsNamedBufferResidentNV,
793     EXT_glIsNamedStringARB,
794     EXT_glIsObjectBufferATI,
795     EXT_glIsOcclusionQueryNV,
796     EXT_glIsProgram,
797     EXT_glIsProgramARB,
798     EXT_glIsProgramNV,
799     EXT_glIsProgramPipeline,
800     EXT_glIsQuery,
801     EXT_glIsQueryARB,
802     EXT_glIsRenderbuffer,
803     EXT_glIsRenderbufferEXT,
804     EXT_glIsSampler,
805     EXT_glIsShader,
806     EXT_glIsSync,
807     EXT_glIsTextureEXT,
808     EXT_glIsTransformFeedback,
809     EXT_glIsTransformFeedbackNV,
810     EXT_glIsVariantEnabledEXT,
811     EXT_glIsVertexArray,
812     EXT_glIsVertexArrayAPPLE,
813     EXT_glIsVertexAttribEnabledAPPLE,
814     EXT_glLightEnviSGIX,
815     EXT_glLinkProgram,
816     EXT_glLinkProgramARB,
817     EXT_glListParameterfSGIX,
818     EXT_glListParameterfvSGIX,
819     EXT_glListParameteriSGIX,
820     EXT_glListParameterivSGIX,
821     EXT_glLoadIdentityDeformationMapSGIX,
822     EXT_glLoadProgramNV,
823     EXT_glLoadTransposeMatrixd,
824     EXT_glLoadTransposeMatrixdARB,
825     EXT_glLoadTransposeMatrixf,
826     EXT_glLoadTransposeMatrixfARB,
827     EXT_glLockArraysEXT,
828     EXT_glMTexCoord2fSGIS,
829     EXT_glMTexCoord2fvSGIS,
830     EXT_glMakeBufferNonResidentNV,
831     EXT_glMakeBufferResidentNV,
832     EXT_glMakeNamedBufferNonResidentNV,
833     EXT_glMakeNamedBufferResidentNV,
834     EXT_glMapBuffer,
835     EXT_glMapBufferARB,
836     EXT_glMapBufferRange,
837     EXT_glMapControlPointsNV,
838     EXT_glMapNamedBufferEXT,
839     EXT_glMapNamedBufferRangeEXT,
840     EXT_glMapObjectBufferATI,
841     EXT_glMapParameterfvNV,
842     EXT_glMapParameterivNV,
843     EXT_glMapVertexAttrib1dAPPLE,
844     EXT_glMapVertexAttrib1fAPPLE,
845     EXT_glMapVertexAttrib2dAPPLE,
846     EXT_glMapVertexAttrib2fAPPLE,
847     EXT_glMatrixFrustumEXT,
848     EXT_glMatrixIndexPointerARB,
849     EXT_glMatrixIndexubvARB,
850     EXT_glMatrixIndexuivARB,
851     EXT_glMatrixIndexusvARB,
852     EXT_glMatrixLoadIdentityEXT,
853     EXT_glMatrixLoadTransposedEXT,
854     EXT_glMatrixLoadTransposefEXT,
855     EXT_glMatrixLoaddEXT,
856     EXT_glMatrixLoadfEXT,
857     EXT_glMatrixMultTransposedEXT,
858     EXT_glMatrixMultTransposefEXT,
859     EXT_glMatrixMultdEXT,
860     EXT_glMatrixMultfEXT,
861     EXT_glMatrixOrthoEXT,
862     EXT_glMatrixPopEXT,
863     EXT_glMatrixPushEXT,
864     EXT_glMatrixRotatedEXT,
865     EXT_glMatrixRotatefEXT,
866     EXT_glMatrixScaledEXT,
867     EXT_glMatrixScalefEXT,
868     EXT_glMatrixTranslatedEXT,
869     EXT_glMatrixTranslatefEXT,
870     EXT_glMemoryBarrierEXT,
871     EXT_glMinSampleShading,
872     EXT_glMinSampleShadingARB,
873     EXT_glMinmax,
874     EXT_glMinmaxEXT,
875     EXT_glMultTransposeMatrixd,
876     EXT_glMultTransposeMatrixdARB,
877     EXT_glMultTransposeMatrixf,
878     EXT_glMultTransposeMatrixfARB,
879     EXT_glMultiDrawArrays,
880     EXT_glMultiDrawArraysEXT,
881     EXT_glMultiDrawElementArrayAPPLE,
882     EXT_glMultiDrawElements,
883     EXT_glMultiDrawElementsBaseVertex,
884     EXT_glMultiDrawElementsEXT,
885     EXT_glMultiDrawRangeElementArrayAPPLE,
886     EXT_glMultiModeDrawArraysIBM,
887     EXT_glMultiModeDrawElementsIBM,
888     EXT_glMultiTexBufferEXT,
889     EXT_glMultiTexCoord1d,
890     EXT_glMultiTexCoord1dARB,
891     EXT_glMultiTexCoord1dSGIS,
892     EXT_glMultiTexCoord1dv,
893     EXT_glMultiTexCoord1dvARB,
894     EXT_glMultiTexCoord1dvSGIS,
895     EXT_glMultiTexCoord1f,
896     EXT_glMultiTexCoord1fARB,
897     EXT_glMultiTexCoord1fSGIS,
898     EXT_glMultiTexCoord1fv,
899     EXT_glMultiTexCoord1fvARB,
900     EXT_glMultiTexCoord1fvSGIS,
901     EXT_glMultiTexCoord1hNV,
902     EXT_glMultiTexCoord1hvNV,
903     EXT_glMultiTexCoord1i,
904     EXT_glMultiTexCoord1iARB,
905     EXT_glMultiTexCoord1iSGIS,
906     EXT_glMultiTexCoord1iv,
907     EXT_glMultiTexCoord1ivARB,
908     EXT_glMultiTexCoord1ivSGIS,
909     EXT_glMultiTexCoord1s,
910     EXT_glMultiTexCoord1sARB,
911     EXT_glMultiTexCoord1sSGIS,
912     EXT_glMultiTexCoord1sv,
913     EXT_glMultiTexCoord1svARB,
914     EXT_glMultiTexCoord1svSGIS,
915     EXT_glMultiTexCoord2d,
916     EXT_glMultiTexCoord2dARB,
917     EXT_glMultiTexCoord2dSGIS,
918     EXT_glMultiTexCoord2dv,
919     EXT_glMultiTexCoord2dvARB,
920     EXT_glMultiTexCoord2dvSGIS,
921     EXT_glMultiTexCoord2f,
922     EXT_glMultiTexCoord2fARB,
923     EXT_glMultiTexCoord2fSGIS,
924     EXT_glMultiTexCoord2fv,
925     EXT_glMultiTexCoord2fvARB,
926     EXT_glMultiTexCoord2fvSGIS,
927     EXT_glMultiTexCoord2hNV,
928     EXT_glMultiTexCoord2hvNV,
929     EXT_glMultiTexCoord2i,
930     EXT_glMultiTexCoord2iARB,
931     EXT_glMultiTexCoord2iSGIS,
932     EXT_glMultiTexCoord2iv,
933     EXT_glMultiTexCoord2ivARB,
934     EXT_glMultiTexCoord2ivSGIS,
935     EXT_glMultiTexCoord2s,
936     EXT_glMultiTexCoord2sARB,
937     EXT_glMultiTexCoord2sSGIS,
938     EXT_glMultiTexCoord2sv,
939     EXT_glMultiTexCoord2svARB,
940     EXT_glMultiTexCoord2svSGIS,
941     EXT_glMultiTexCoord3d,
942     EXT_glMultiTexCoord3dARB,
943     EXT_glMultiTexCoord3dSGIS,
944     EXT_glMultiTexCoord3dv,
945     EXT_glMultiTexCoord3dvARB,
946     EXT_glMultiTexCoord3dvSGIS,
947     EXT_glMultiTexCoord3f,
948     EXT_glMultiTexCoord3fARB,
949     EXT_glMultiTexCoord3fSGIS,
950     EXT_glMultiTexCoord3fv,
951     EXT_glMultiTexCoord3fvARB,
952     EXT_glMultiTexCoord3fvSGIS,
953     EXT_glMultiTexCoord3hNV,
954     EXT_glMultiTexCoord3hvNV,
955     EXT_glMultiTexCoord3i,
956     EXT_glMultiTexCoord3iARB,
957     EXT_glMultiTexCoord3iSGIS,
958     EXT_glMultiTexCoord3iv,
959     EXT_glMultiTexCoord3ivARB,
960     EXT_glMultiTexCoord3ivSGIS,
961     EXT_glMultiTexCoord3s,
962     EXT_glMultiTexCoord3sARB,
963     EXT_glMultiTexCoord3sSGIS,
964     EXT_glMultiTexCoord3sv,
965     EXT_glMultiTexCoord3svARB,
966     EXT_glMultiTexCoord3svSGIS,
967     EXT_glMultiTexCoord4d,
968     EXT_glMultiTexCoord4dARB,
969     EXT_glMultiTexCoord4dSGIS,
970     EXT_glMultiTexCoord4dv,
971     EXT_glMultiTexCoord4dvARB,
972     EXT_glMultiTexCoord4dvSGIS,
973     EXT_glMultiTexCoord4f,
974     EXT_glMultiTexCoord4fARB,
975     EXT_glMultiTexCoord4fSGIS,
976     EXT_glMultiTexCoord4fv,
977     EXT_glMultiTexCoord4fvARB,
978     EXT_glMultiTexCoord4fvSGIS,
979     EXT_glMultiTexCoord4hNV,
980     EXT_glMultiTexCoord4hvNV,
981     EXT_glMultiTexCoord4i,
982     EXT_glMultiTexCoord4iARB,
983     EXT_glMultiTexCoord4iSGIS,
984     EXT_glMultiTexCoord4iv,
985     EXT_glMultiTexCoord4ivARB,
986     EXT_glMultiTexCoord4ivSGIS,
987     EXT_glMultiTexCoord4s,
988     EXT_glMultiTexCoord4sARB,
989     EXT_glMultiTexCoord4sSGIS,
990     EXT_glMultiTexCoord4sv,
991     EXT_glMultiTexCoord4svARB,
992     EXT_glMultiTexCoord4svSGIS,
993     EXT_glMultiTexCoordP1ui,
994     EXT_glMultiTexCoordP1uiv,
995     EXT_glMultiTexCoordP2ui,
996     EXT_glMultiTexCoordP2uiv,
997     EXT_glMultiTexCoordP3ui,
998     EXT_glMultiTexCoordP3uiv,
999     EXT_glMultiTexCoordP4ui,
1000     EXT_glMultiTexCoordP4uiv,
1001     EXT_glMultiTexCoordPointerEXT,
1002     EXT_glMultiTexCoordPointerSGIS,
1003     EXT_glMultiTexEnvfEXT,
1004     EXT_glMultiTexEnvfvEXT,
1005     EXT_glMultiTexEnviEXT,
1006     EXT_glMultiTexEnvivEXT,
1007     EXT_glMultiTexGendEXT,
1008     EXT_glMultiTexGendvEXT,
1009     EXT_glMultiTexGenfEXT,
1010     EXT_glMultiTexGenfvEXT,
1011     EXT_glMultiTexGeniEXT,
1012     EXT_glMultiTexGenivEXT,
1013     EXT_glMultiTexImage1DEXT,
1014     EXT_glMultiTexImage2DEXT,
1015     EXT_glMultiTexImage3DEXT,
1016     EXT_glMultiTexParameterIivEXT,
1017     EXT_glMultiTexParameterIuivEXT,
1018     EXT_glMultiTexParameterfEXT,
1019     EXT_glMultiTexParameterfvEXT,
1020     EXT_glMultiTexParameteriEXT,
1021     EXT_glMultiTexParameterivEXT,
1022     EXT_glMultiTexRenderbufferEXT,
1023     EXT_glMultiTexSubImage1DEXT,
1024     EXT_glMultiTexSubImage2DEXT,
1025     EXT_glMultiTexSubImage3DEXT,
1026     EXT_glNamedBufferDataEXT,
1027     EXT_glNamedBufferSubDataEXT,
1028     EXT_glNamedCopyBufferSubDataEXT,
1029     EXT_glNamedFramebufferRenderbufferEXT,
1030     EXT_glNamedFramebufferTexture1DEXT,
1031     EXT_glNamedFramebufferTexture2DEXT,
1032     EXT_glNamedFramebufferTexture3DEXT,
1033     EXT_glNamedFramebufferTextureEXT,
1034     EXT_glNamedFramebufferTextureFaceEXT,
1035     EXT_glNamedFramebufferTextureLayerEXT,
1036     EXT_glNamedProgramLocalParameter4dEXT,
1037     EXT_glNamedProgramLocalParameter4dvEXT,
1038     EXT_glNamedProgramLocalParameter4fEXT,
1039     EXT_glNamedProgramLocalParameter4fvEXT,
1040     EXT_glNamedProgramLocalParameterI4iEXT,
1041     EXT_glNamedProgramLocalParameterI4ivEXT,
1042     EXT_glNamedProgramLocalParameterI4uiEXT,
1043     EXT_glNamedProgramLocalParameterI4uivEXT,
1044     EXT_glNamedProgramLocalParameters4fvEXT,
1045     EXT_glNamedProgramLocalParametersI4ivEXT,
1046     EXT_glNamedProgramLocalParametersI4uivEXT,
1047     EXT_glNamedProgramStringEXT,
1048     EXT_glNamedRenderbufferStorageEXT,
1049     EXT_glNamedRenderbufferStorageMultisampleCoverageEXT,
1050     EXT_glNamedRenderbufferStorageMultisampleEXT,
1051     EXT_glNamedStringARB,
1052     EXT_glNewBufferRegion,
1053     EXT_glNewObjectBufferATI,
1054     EXT_glNormal3fVertex3fSUN,
1055     EXT_glNormal3fVertex3fvSUN,
1056     EXT_glNormal3hNV,
1057     EXT_glNormal3hvNV,
1058     EXT_glNormalFormatNV,
1059     EXT_glNormalP3ui,
1060     EXT_glNormalP3uiv,
1061     EXT_glNormalPointerEXT,
1062     EXT_glNormalPointerListIBM,
1063     EXT_glNormalPointervINTEL,
1064     EXT_glNormalStream3bATI,
1065     EXT_glNormalStream3bvATI,
1066     EXT_glNormalStream3dATI,
1067     EXT_glNormalStream3dvATI,
1068     EXT_glNormalStream3fATI,
1069     EXT_glNormalStream3fvATI,
1070     EXT_glNormalStream3iATI,
1071     EXT_glNormalStream3ivATI,
1072     EXT_glNormalStream3sATI,
1073     EXT_glNormalStream3svATI,
1074     EXT_glObjectPurgeableAPPLE,
1075     EXT_glObjectUnpurgeableAPPLE,
1076     EXT_glPNTrianglesfATI,
1077     EXT_glPNTrianglesiATI,
1078     EXT_glPassTexCoordATI,
1079     EXT_glPatchParameterfv,
1080     EXT_glPatchParameteri,
1081     EXT_glPauseTransformFeedback,
1082     EXT_glPauseTransformFeedbackNV,
1083     EXT_glPixelDataRangeNV,
1084     EXT_glPixelTexGenParameterfSGIS,
1085     EXT_glPixelTexGenParameterfvSGIS,
1086     EXT_glPixelTexGenParameteriSGIS,
1087     EXT_glPixelTexGenParameterivSGIS,
1088     EXT_glPixelTexGenSGIX,
1089     EXT_glPixelTransformParameterfEXT,
1090     EXT_glPixelTransformParameterfvEXT,
1091     EXT_glPixelTransformParameteriEXT,
1092     EXT_glPixelTransformParameterivEXT,
1093     EXT_glPointParameterf,
1094     EXT_glPointParameterfARB,
1095     EXT_glPointParameterfEXT,
1096     EXT_glPointParameterfSGIS,
1097     EXT_glPointParameterfv,
1098     EXT_glPointParameterfvARB,
1099     EXT_glPointParameterfvEXT,
1100     EXT_glPointParameterfvSGIS,
1101     EXT_glPointParameteri,
1102     EXT_glPointParameteriNV,
1103     EXT_glPointParameteriv,
1104     EXT_glPointParameterivNV,
1105     EXT_glPollAsyncSGIX,
1106     EXT_glPollInstrumentsSGIX,
1107     EXT_glPolygonOffsetEXT,
1108     EXT_glPresentFrameDualFillNV,
1109     EXT_glPresentFrameKeyedNV,
1110     EXT_glPrimitiveRestartIndex,
1111     EXT_glPrimitiveRestartIndexNV,
1112     EXT_glPrimitiveRestartNV,
1113     EXT_glPrioritizeTexturesEXT,
1114     EXT_glProgramBinary,
1115     EXT_glProgramBufferParametersIivNV,
1116     EXT_glProgramBufferParametersIuivNV,
1117     EXT_glProgramBufferParametersfvNV,
1118     EXT_glProgramEnvParameter4dARB,
1119     EXT_glProgramEnvParameter4dvARB,
1120     EXT_glProgramEnvParameter4fARB,
1121     EXT_glProgramEnvParameter4fvARB,
1122     EXT_glProgramEnvParameterI4iNV,
1123     EXT_glProgramEnvParameterI4ivNV,
1124     EXT_glProgramEnvParameterI4uiNV,
1125     EXT_glProgramEnvParameterI4uivNV,
1126     EXT_glProgramEnvParameters4fvEXT,
1127     EXT_glProgramEnvParametersI4ivNV,
1128     EXT_glProgramEnvParametersI4uivNV,
1129     EXT_glProgramLocalParameter4dARB,
1130     EXT_glProgramLocalParameter4dvARB,
1131     EXT_glProgramLocalParameter4fARB,
1132     EXT_glProgramLocalParameter4fvARB,
1133     EXT_glProgramLocalParameterI4iNV,
1134     EXT_glProgramLocalParameterI4ivNV,
1135     EXT_glProgramLocalParameterI4uiNV,
1136     EXT_glProgramLocalParameterI4uivNV,
1137     EXT_glProgramLocalParameters4fvEXT,
1138     EXT_glProgramLocalParametersI4ivNV,
1139     EXT_glProgramLocalParametersI4uivNV,
1140     EXT_glProgramNamedParameter4dNV,
1141     EXT_glProgramNamedParameter4dvNV,
1142     EXT_glProgramNamedParameter4fNV,
1143     EXT_glProgramNamedParameter4fvNV,
1144     EXT_glProgramParameter4dNV,
1145     EXT_glProgramParameter4dvNV,
1146     EXT_glProgramParameter4fNV,
1147     EXT_glProgramParameter4fvNV,
1148     EXT_glProgramParameteri,
1149     EXT_glProgramParameteriARB,
1150     EXT_glProgramParameteriEXT,
1151     EXT_glProgramParameters4dvNV,
1152     EXT_glProgramParameters4fvNV,
1153     EXT_glProgramStringARB,
1154     EXT_glProgramSubroutineParametersuivNV,
1155     EXT_glProgramUniform1d,
1156     EXT_glProgramUniform1dEXT,
1157     EXT_glProgramUniform1dv,
1158     EXT_glProgramUniform1dvEXT,
1159     EXT_glProgramUniform1f,
1160     EXT_glProgramUniform1fEXT,
1161     EXT_glProgramUniform1fv,
1162     EXT_glProgramUniform1fvEXT,
1163     EXT_glProgramUniform1i,
1164     EXT_glProgramUniform1i64NV,
1165     EXT_glProgramUniform1i64vNV,
1166     EXT_glProgramUniform1iEXT,
1167     EXT_glProgramUniform1iv,
1168     EXT_glProgramUniform1ivEXT,
1169     EXT_glProgramUniform1ui,
1170     EXT_glProgramUniform1ui64NV,
1171     EXT_glProgramUniform1ui64vNV,
1172     EXT_glProgramUniform1uiEXT,
1173     EXT_glProgramUniform1uiv,
1174     EXT_glProgramUniform1uivEXT,
1175     EXT_glProgramUniform2d,
1176     EXT_glProgramUniform2dEXT,
1177     EXT_glProgramUniform2dv,
1178     EXT_glProgramUniform2dvEXT,
1179     EXT_glProgramUniform2f,
1180     EXT_glProgramUniform2fEXT,
1181     EXT_glProgramUniform2fv,
1182     EXT_glProgramUniform2fvEXT,
1183     EXT_glProgramUniform2i,
1184     EXT_glProgramUniform2i64NV,
1185     EXT_glProgramUniform2i64vNV,
1186     EXT_glProgramUniform2iEXT,
1187     EXT_glProgramUniform2iv,
1188     EXT_glProgramUniform2ivEXT,
1189     EXT_glProgramUniform2ui,
1190     EXT_glProgramUniform2ui64NV,
1191     EXT_glProgramUniform2ui64vNV,
1192     EXT_glProgramUniform2uiEXT,
1193     EXT_glProgramUniform2uiv,
1194     EXT_glProgramUniform2uivEXT,
1195     EXT_glProgramUniform3d,
1196     EXT_glProgramUniform3dEXT,
1197     EXT_glProgramUniform3dv,
1198     EXT_glProgramUniform3dvEXT,
1199     EXT_glProgramUniform3f,
1200     EXT_glProgramUniform3fEXT,
1201     EXT_glProgramUniform3fv,
1202     EXT_glProgramUniform3fvEXT,
1203     EXT_glProgramUniform3i,
1204     EXT_glProgramUniform3i64NV,
1205     EXT_glProgramUniform3i64vNV,
1206     EXT_glProgramUniform3iEXT,
1207     EXT_glProgramUniform3iv,
1208     EXT_glProgramUniform3ivEXT,
1209     EXT_glProgramUniform3ui,
1210     EXT_glProgramUniform3ui64NV,
1211     EXT_glProgramUniform3ui64vNV,
1212     EXT_glProgramUniform3uiEXT,
1213     EXT_glProgramUniform3uiv,
1214     EXT_glProgramUniform3uivEXT,
1215     EXT_glProgramUniform4d,
1216     EXT_glProgramUniform4dEXT,
1217     EXT_glProgramUniform4dv,
1218     EXT_glProgramUniform4dvEXT,
1219     EXT_glProgramUniform4f,
1220     EXT_glProgramUniform4fEXT,
1221     EXT_glProgramUniform4fv,
1222     EXT_glProgramUniform4fvEXT,
1223     EXT_glProgramUniform4i,
1224     EXT_glProgramUniform4i64NV,
1225     EXT_glProgramUniform4i64vNV,
1226     EXT_glProgramUniform4iEXT,
1227     EXT_glProgramUniform4iv,
1228     EXT_glProgramUniform4ivEXT,
1229     EXT_glProgramUniform4ui,
1230     EXT_glProgramUniform4ui64NV,
1231     EXT_glProgramUniform4ui64vNV,
1232     EXT_glProgramUniform4uiEXT,
1233     EXT_glProgramUniform4uiv,
1234     EXT_glProgramUniform4uivEXT,
1235     EXT_glProgramUniformMatrix2dv,
1236     EXT_glProgramUniformMatrix2dvEXT,
1237     EXT_glProgramUniformMatrix2fv,
1238     EXT_glProgramUniformMatrix2fvEXT,
1239     EXT_glProgramUniformMatrix2x3dv,
1240     EXT_glProgramUniformMatrix2x3dvEXT,
1241     EXT_glProgramUniformMatrix2x3fv,
1242     EXT_glProgramUniformMatrix2x3fvEXT,
1243     EXT_glProgramUniformMatrix2x4dv,
1244     EXT_glProgramUniformMatrix2x4dvEXT,
1245     EXT_glProgramUniformMatrix2x4fv,
1246     EXT_glProgramUniformMatrix2x4fvEXT,
1247     EXT_glProgramUniformMatrix3dv,
1248     EXT_glProgramUniformMatrix3dvEXT,
1249     EXT_glProgramUniformMatrix3fv,
1250     EXT_glProgramUniformMatrix3fvEXT,
1251     EXT_glProgramUniformMatrix3x2dv,
1252     EXT_glProgramUniformMatrix3x2dvEXT,
1253     EXT_glProgramUniformMatrix3x2fv,
1254     EXT_glProgramUniformMatrix3x2fvEXT,
1255     EXT_glProgramUniformMatrix3x4dv,
1256     EXT_glProgramUniformMatrix3x4dvEXT,
1257     EXT_glProgramUniformMatrix3x4fv,
1258     EXT_glProgramUniformMatrix3x4fvEXT,
1259     EXT_glProgramUniformMatrix4dv,
1260     EXT_glProgramUniformMatrix4dvEXT,
1261     EXT_glProgramUniformMatrix4fv,
1262     EXT_glProgramUniformMatrix4fvEXT,
1263     EXT_glProgramUniformMatrix4x2dv,
1264     EXT_glProgramUniformMatrix4x2dvEXT,
1265     EXT_glProgramUniformMatrix4x2fv,
1266     EXT_glProgramUniformMatrix4x2fvEXT,
1267     EXT_glProgramUniformMatrix4x3dv,
1268     EXT_glProgramUniformMatrix4x3dvEXT,
1269     EXT_glProgramUniformMatrix4x3fv,
1270     EXT_glProgramUniformMatrix4x3fvEXT,
1271     EXT_glProgramUniformui64NV,
1272     EXT_glProgramUniformui64vNV,
1273     EXT_glProgramVertexLimitNV,
1274     EXT_glProvokingVertex,
1275     EXT_glProvokingVertexEXT,
1276     EXT_glPushClientAttribDefaultEXT,
1277     EXT_glQueryCounter,
1278     EXT_glReadBufferRegion,
1279     EXT_glReadInstrumentsSGIX,
1280     EXT_glReadnPixelsARB,
1281     EXT_glReferencePlaneSGIX,
1282     EXT_glReleaseShaderCompiler,
1283     EXT_glRenderbufferStorage,
1284     EXT_glRenderbufferStorageEXT,
1285     EXT_glRenderbufferStorageMultisample,
1286     EXT_glRenderbufferStorageMultisampleCoverageNV,
1287     EXT_glRenderbufferStorageMultisampleEXT,
1288     EXT_glReplacementCodePointerSUN,
1289     EXT_glReplacementCodeubSUN,
1290     EXT_glReplacementCodeubvSUN,
1291     EXT_glReplacementCodeuiColor3fVertex3fSUN,
1292     EXT_glReplacementCodeuiColor3fVertex3fvSUN,
1293     EXT_glReplacementCodeuiColor4fNormal3fVertex3fSUN,
1294     EXT_glReplacementCodeuiColor4fNormal3fVertex3fvSUN,
1295     EXT_glReplacementCodeuiColor4ubVertex3fSUN,
1296     EXT_glReplacementCodeuiColor4ubVertex3fvSUN,
1297     EXT_glReplacementCodeuiNormal3fVertex3fSUN,
1298     EXT_glReplacementCodeuiNormal3fVertex3fvSUN,
1299     EXT_glReplacementCodeuiSUN,
1300     EXT_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN,
1301     EXT_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN,
1302     EXT_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN,
1303     EXT_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN,
1304     EXT_glReplacementCodeuiTexCoord2fVertex3fSUN,
1305     EXT_glReplacementCodeuiTexCoord2fVertex3fvSUN,
1306     EXT_glReplacementCodeuiVertex3fSUN,
1307     EXT_glReplacementCodeuiVertex3fvSUN,
1308     EXT_glReplacementCodeuivSUN,
1309     EXT_glReplacementCodeusSUN,
1310     EXT_glReplacementCodeusvSUN,
1311     EXT_glRequestResidentProgramsNV,
1312     EXT_glResetHistogram,
1313     EXT_glResetHistogramEXT,
1314     EXT_glResetMinmax,
1315     EXT_glResetMinmaxEXT,
1316     EXT_glResizeBuffersMESA,
1317     EXT_glResumeTransformFeedback,
1318     EXT_glResumeTransformFeedbackNV,
1319     EXT_glSampleCoverage,
1320     EXT_glSampleCoverageARB,
1321     EXT_glSampleMapATI,
1322     EXT_glSampleMaskEXT,
1323     EXT_glSampleMaskIndexedNV,
1324     EXT_glSampleMaskSGIS,
1325     EXT_glSampleMaski,
1326     EXT_glSamplePatternEXT,
1327     EXT_glSamplePatternSGIS,
1328     EXT_glSamplerParameterIiv,
1329     EXT_glSamplerParameterIuiv,
1330     EXT_glSamplerParameterf,
1331     EXT_glSamplerParameterfv,
1332     EXT_glSamplerParameteri,
1333     EXT_glSamplerParameteriv,
1334     EXT_glScissorArrayv,
1335     EXT_glScissorIndexed,
1336     EXT_glScissorIndexedv,
1337     EXT_glSecondaryColor3b,
1338     EXT_glSecondaryColor3bEXT,
1339     EXT_glSecondaryColor3bv,
1340     EXT_glSecondaryColor3bvEXT,
1341     EXT_glSecondaryColor3d,
1342     EXT_glSecondaryColor3dEXT,
1343     EXT_glSecondaryColor3dv,
1344     EXT_glSecondaryColor3dvEXT,
1345     EXT_glSecondaryColor3f,
1346     EXT_glSecondaryColor3fEXT,
1347     EXT_glSecondaryColor3fv,
1348     EXT_glSecondaryColor3fvEXT,
1349     EXT_glSecondaryColor3hNV,
1350     EXT_glSecondaryColor3hvNV,
1351     EXT_glSecondaryColor3i,
1352     EXT_glSecondaryColor3iEXT,
1353     EXT_glSecondaryColor3iv,
1354     EXT_glSecondaryColor3ivEXT,
1355     EXT_glSecondaryColor3s,
1356     EXT_glSecondaryColor3sEXT,
1357     EXT_glSecondaryColor3sv,
1358     EXT_glSecondaryColor3svEXT,
1359     EXT_glSecondaryColor3ub,
1360     EXT_glSecondaryColor3ubEXT,
1361     EXT_glSecondaryColor3ubv,
1362     EXT_glSecondaryColor3ubvEXT,
1363     EXT_glSecondaryColor3ui,
1364     EXT_glSecondaryColor3uiEXT,
1365     EXT_glSecondaryColor3uiv,
1366     EXT_glSecondaryColor3uivEXT,
1367     EXT_glSecondaryColor3us,
1368     EXT_glSecondaryColor3usEXT,
1369     EXT_glSecondaryColor3usv,
1370     EXT_glSecondaryColor3usvEXT,
1371     EXT_glSecondaryColorFormatNV,
1372     EXT_glSecondaryColorP3ui,
1373     EXT_glSecondaryColorP3uiv,
1374     EXT_glSecondaryColorPointer,
1375     EXT_glSecondaryColorPointerEXT,
1376     EXT_glSecondaryColorPointerListIBM,
1377     EXT_glSelectPerfMonitorCountersAMD,
1378     EXT_glSelectTextureCoordSetSGIS,
1379     EXT_glSelectTextureSGIS,
1380     EXT_glSeparableFilter2D,
1381     EXT_glSeparableFilter2DEXT,
1382     EXT_glSetFenceAPPLE,
1383     EXT_glSetFenceNV,
1384     EXT_glSetFragmentShaderConstantATI,
1385     EXT_glSetInvariantEXT,
1386     EXT_glSetLocalConstantEXT,
1387     EXT_glShaderBinary,
1388     EXT_glShaderOp1EXT,
1389     EXT_glShaderOp2EXT,
1390     EXT_glShaderOp3EXT,
1391     EXT_glShaderSource,
1392     EXT_glShaderSourceARB,
1393     EXT_glSharpenTexFuncSGIS,
1394     EXT_glSpriteParameterfSGIX,
1395     EXT_glSpriteParameterfvSGIX,
1396     EXT_glSpriteParameteriSGIX,
1397     EXT_glSpriteParameterivSGIX,
1398     EXT_glStartInstrumentsSGIX,
1399     EXT_glStencilClearTagEXT,
1400     EXT_glStencilFuncSeparate,
1401     EXT_glStencilFuncSeparateATI,
1402     EXT_glStencilMaskSeparate,
1403     EXT_glStencilOpSeparate,
1404     EXT_glStencilOpSeparateATI,
1405     EXT_glStopInstrumentsSGIX,
1406     EXT_glStringMarkerGREMEDY,
1407     EXT_glSwizzleEXT,
1408     EXT_glTagSampleBufferSGIX,
1409     EXT_glTangent3bEXT,
1410     EXT_glTangent3bvEXT,
1411     EXT_glTangent3dEXT,
1412     EXT_glTangent3dvEXT,
1413     EXT_glTangent3fEXT,
1414     EXT_glTangent3fvEXT,
1415     EXT_glTangent3iEXT,
1416     EXT_glTangent3ivEXT,
1417     EXT_glTangent3sEXT,
1418     EXT_glTangent3svEXT,
1419     EXT_glTangentPointerEXT,
1420     EXT_glTbufferMask3DFX,
1421     EXT_glTessellationFactorAMD,
1422     EXT_glTessellationModeAMD,
1423     EXT_glTestFenceAPPLE,
1424     EXT_glTestFenceNV,
1425     EXT_glTestObjectAPPLE,
1426     EXT_glTexBuffer,
1427     EXT_glTexBufferARB,
1428     EXT_glTexBufferEXT,
1429     EXT_glTexBumpParameterfvATI,
1430     EXT_glTexBumpParameterivATI,
1431     EXT_glTexCoord1hNV,
1432     EXT_glTexCoord1hvNV,
1433     EXT_glTexCoord2fColor3fVertex3fSUN,
1434     EXT_glTexCoord2fColor3fVertex3fvSUN,
1435     EXT_glTexCoord2fColor4fNormal3fVertex3fSUN,
1436     EXT_glTexCoord2fColor4fNormal3fVertex3fvSUN,
1437     EXT_glTexCoord2fColor4ubVertex3fSUN,
1438     EXT_glTexCoord2fColor4ubVertex3fvSUN,
1439     EXT_glTexCoord2fNormal3fVertex3fSUN,
1440     EXT_glTexCoord2fNormal3fVertex3fvSUN,
1441     EXT_glTexCoord2fVertex3fSUN,
1442     EXT_glTexCoord2fVertex3fvSUN,
1443     EXT_glTexCoord2hNV,
1444     EXT_glTexCoord2hvNV,
1445     EXT_glTexCoord3hNV,
1446     EXT_glTexCoord3hvNV,
1447     EXT_glTexCoord4fColor4fNormal3fVertex4fSUN,
1448     EXT_glTexCoord4fColor4fNormal3fVertex4fvSUN,
1449     EXT_glTexCoord4fVertex4fSUN,
1450     EXT_glTexCoord4fVertex4fvSUN,
1451     EXT_glTexCoord4hNV,
1452     EXT_glTexCoord4hvNV,
1453     EXT_glTexCoordFormatNV,
1454     EXT_glTexCoordP1ui,
1455     EXT_glTexCoordP1uiv,
1456     EXT_glTexCoordP2ui,
1457     EXT_glTexCoordP2uiv,
1458     EXT_glTexCoordP3ui,
1459     EXT_glTexCoordP3uiv,
1460     EXT_glTexCoordP4ui,
1461     EXT_glTexCoordP4uiv,
1462     EXT_glTexCoordPointerEXT,
1463     EXT_glTexCoordPointerListIBM,
1464     EXT_glTexCoordPointervINTEL,
1465     EXT_glTexFilterFuncSGIS,
1466     EXT_glTexImage2DMultisample,
1467     EXT_glTexImage3D,
1468     EXT_glTexImage3DEXT,
1469     EXT_glTexImage3DMultisample,
1470     EXT_glTexImage4DSGIS,
1471     EXT_glTexParameterIiv,
1472     EXT_glTexParameterIivEXT,
1473     EXT_glTexParameterIuiv,
1474     EXT_glTexParameterIuivEXT,
1475     EXT_glTexRenderbufferNV,
1476     EXT_glTexSubImage1DEXT,
1477     EXT_glTexSubImage2DEXT,
1478     EXT_glTexSubImage3D,
1479     EXT_glTexSubImage3DEXT,
1480     EXT_glTexSubImage4DSGIS,
1481     EXT_glTextureBarrierNV,
1482     EXT_glTextureBufferEXT,
1483     EXT_glTextureColorMaskSGIS,
1484     EXT_glTextureImage1DEXT,
1485     EXT_glTextureImage2DEXT,
1486     EXT_glTextureImage3DEXT,
1487     EXT_glTextureLightEXT,
1488     EXT_glTextureMaterialEXT,
1489     EXT_glTextureNormalEXT,
1490     EXT_glTextureParameterIivEXT,
1491     EXT_glTextureParameterIuivEXT,
1492     EXT_glTextureParameterfEXT,
1493     EXT_glTextureParameterfvEXT,
1494     EXT_glTextureParameteriEXT,
1495     EXT_glTextureParameterivEXT,
1496     EXT_glTextureRangeAPPLE,
1497     EXT_glTextureRenderbufferEXT,
1498     EXT_glTextureSubImage1DEXT,
1499     EXT_glTextureSubImage2DEXT,
1500     EXT_glTextureSubImage3DEXT,
1501     EXT_glTrackMatrixNV,
1502     EXT_glTransformFeedbackAttribsNV,
1503     EXT_glTransformFeedbackStreamAttribsNV,
1504     EXT_glTransformFeedbackVaryings,
1505     EXT_glTransformFeedbackVaryingsEXT,
1506     EXT_glTransformFeedbackVaryingsNV,
1507     EXT_glUniform1d,
1508     EXT_glUniform1dv,
1509     EXT_glUniform1f,
1510     EXT_glUniform1fARB,
1511     EXT_glUniform1fv,
1512     EXT_glUniform1fvARB,
1513     EXT_glUniform1i,
1514     EXT_glUniform1i64NV,
1515     EXT_glUniform1i64vNV,
1516     EXT_glUniform1iARB,
1517     EXT_glUniform1iv,
1518     EXT_glUniform1ivARB,
1519     EXT_glUniform1ui,
1520     EXT_glUniform1ui64NV,
1521     EXT_glUniform1ui64vNV,
1522     EXT_glUniform1uiEXT,
1523     EXT_glUniform1uiv,
1524     EXT_glUniform1uivEXT,
1525     EXT_glUniform2d,
1526     EXT_glUniform2dv,
1527     EXT_glUniform2f,
1528     EXT_glUniform2fARB,
1529     EXT_glUniform2fv,
1530     EXT_glUniform2fvARB,
1531     EXT_glUniform2i,
1532     EXT_glUniform2i64NV,
1533     EXT_glUniform2i64vNV,
1534     EXT_glUniform2iARB,
1535     EXT_glUniform2iv,
1536     EXT_glUniform2ivARB,
1537     EXT_glUniform2ui,
1538     EXT_glUniform2ui64NV,
1539     EXT_glUniform2ui64vNV,
1540     EXT_glUniform2uiEXT,
1541     EXT_glUniform2uiv,
1542     EXT_glUniform2uivEXT,
1543     EXT_glUniform3d,
1544     EXT_glUniform3dv,
1545     EXT_glUniform3f,
1546     EXT_glUniform3fARB,
1547     EXT_glUniform3fv,
1548     EXT_glUniform3fvARB,
1549     EXT_glUniform3i,
1550     EXT_glUniform3i64NV,
1551     EXT_glUniform3i64vNV,
1552     EXT_glUniform3iARB,
1553     EXT_glUniform3iv,
1554     EXT_glUniform3ivARB,
1555     EXT_glUniform3ui,
1556     EXT_glUniform3ui64NV,
1557     EXT_glUniform3ui64vNV,
1558     EXT_glUniform3uiEXT,
1559     EXT_glUniform3uiv,
1560     EXT_glUniform3uivEXT,
1561     EXT_glUniform4d,
1562     EXT_glUniform4dv,
1563     EXT_glUniform4f,
1564     EXT_glUniform4fARB,
1565     EXT_glUniform4fv,
1566     EXT_glUniform4fvARB,
1567     EXT_glUniform4i,
1568     EXT_glUniform4i64NV,
1569     EXT_glUniform4i64vNV,
1570     EXT_glUniform4iARB,
1571     EXT_glUniform4iv,
1572     EXT_glUniform4ivARB,
1573     EXT_glUniform4ui,
1574     EXT_glUniform4ui64NV,
1575     EXT_glUniform4ui64vNV,
1576     EXT_glUniform4uiEXT,
1577     EXT_glUniform4uiv,
1578     EXT_glUniform4uivEXT,
1579     EXT_glUniformBlockBinding,
1580     EXT_glUniformBufferEXT,
1581     EXT_glUniformMatrix2dv,
1582     EXT_glUniformMatrix2fv,
1583     EXT_glUniformMatrix2fvARB,
1584     EXT_glUniformMatrix2x3dv,
1585     EXT_glUniformMatrix2x3fv,
1586     EXT_glUniformMatrix2x4dv,
1587     EXT_glUniformMatrix2x4fv,
1588     EXT_glUniformMatrix3dv,
1589     EXT_glUniformMatrix3fv,
1590     EXT_glUniformMatrix3fvARB,
1591     EXT_glUniformMatrix3x2dv,
1592     EXT_glUniformMatrix3x2fv,
1593     EXT_glUniformMatrix3x4dv,
1594     EXT_glUniformMatrix3x4fv,
1595     EXT_glUniformMatrix4dv,
1596     EXT_glUniformMatrix4fv,
1597     EXT_glUniformMatrix4fvARB,
1598     EXT_glUniformMatrix4x2dv,
1599     EXT_glUniformMatrix4x2fv,
1600     EXT_glUniformMatrix4x3dv,
1601     EXT_glUniformMatrix4x3fv,
1602     EXT_glUniformSubroutinesuiv,
1603     EXT_glUniformui64NV,
1604     EXT_glUniformui64vNV,
1605     EXT_glUnlockArraysEXT,
1606     EXT_glUnmapBuffer,
1607     EXT_glUnmapBufferARB,
1608     EXT_glUnmapNamedBufferEXT,
1609     EXT_glUnmapObjectBufferATI,
1610     EXT_glUpdateObjectBufferATI,
1611     EXT_glUseProgram,
1612     EXT_glUseProgramObjectARB,
1613     EXT_glUseProgramStages,
1614     EXT_glUseShaderProgramEXT,
1615     EXT_glVDPAUFiniNV,
1616     EXT_glVDPAUGetSurfaceivNV,
1617     EXT_glVDPAUInitNV,
1618     EXT_glVDPAUIsSurfaceNV,
1619     EXT_glVDPAUMapSurfacesNV,
1620     EXT_glVDPAURegisterOutputSurfaceNV,
1621     EXT_glVDPAURegisterVideoSurfaceNV,
1622     EXT_glVDPAUSurfaceAccessNV,
1623     EXT_glVDPAUUnmapSurfacesNV,
1624     EXT_glVDPAUUnregisterSurfaceNV,
1625     EXT_glValidateProgram,
1626     EXT_glValidateProgramARB,
1627     EXT_glValidateProgramPipeline,
1628     EXT_glVariantArrayObjectATI,
1629     EXT_glVariantPointerEXT,
1630     EXT_glVariantbvEXT,
1631     EXT_glVariantdvEXT,
1632     EXT_glVariantfvEXT,
1633     EXT_glVariantivEXT,
1634     EXT_glVariantsvEXT,
1635     EXT_glVariantubvEXT,
1636     EXT_glVariantuivEXT,
1637     EXT_glVariantusvEXT,
1638     EXT_glVertex2hNV,
1639     EXT_glVertex2hvNV,
1640     EXT_glVertex3hNV,
1641     EXT_glVertex3hvNV,
1642     EXT_glVertex4hNV,
1643     EXT_glVertex4hvNV,
1644     EXT_glVertexArrayParameteriAPPLE,
1645     EXT_glVertexArrayRangeAPPLE,
1646     EXT_glVertexArrayRangeNV,
1647     EXT_glVertexArrayVertexAttribLOffsetEXT,
1648     EXT_glVertexAttrib1d,
1649     EXT_glVertexAttrib1dARB,
1650     EXT_glVertexAttrib1dNV,
1651     EXT_glVertexAttrib1dv,
1652     EXT_glVertexAttrib1dvARB,
1653     EXT_glVertexAttrib1dvNV,
1654     EXT_glVertexAttrib1f,
1655     EXT_glVertexAttrib1fARB,
1656     EXT_glVertexAttrib1fNV,
1657     EXT_glVertexAttrib1fv,
1658     EXT_glVertexAttrib1fvARB,
1659     EXT_glVertexAttrib1fvNV,
1660     EXT_glVertexAttrib1hNV,
1661     EXT_glVertexAttrib1hvNV,
1662     EXT_glVertexAttrib1s,
1663     EXT_glVertexAttrib1sARB,
1664     EXT_glVertexAttrib1sNV,
1665     EXT_glVertexAttrib1sv,
1666     EXT_glVertexAttrib1svARB,
1667     EXT_glVertexAttrib1svNV,
1668     EXT_glVertexAttrib2d,
1669     EXT_glVertexAttrib2dARB,
1670     EXT_glVertexAttrib2dNV,
1671     EXT_glVertexAttrib2dv,
1672     EXT_glVertexAttrib2dvARB,
1673     EXT_glVertexAttrib2dvNV,
1674     EXT_glVertexAttrib2f,
1675     EXT_glVertexAttrib2fARB,
1676     EXT_glVertexAttrib2fNV,
1677     EXT_glVertexAttrib2fv,
1678     EXT_glVertexAttrib2fvARB,
1679     EXT_glVertexAttrib2fvNV,
1680     EXT_glVertexAttrib2hNV,
1681     EXT_glVertexAttrib2hvNV,
1682     EXT_glVertexAttrib2s,
1683     EXT_glVertexAttrib2sARB,
1684     EXT_glVertexAttrib2sNV,
1685     EXT_glVertexAttrib2sv,
1686     EXT_glVertexAttrib2svARB,
1687     EXT_glVertexAttrib2svNV,
1688     EXT_glVertexAttrib3d,
1689     EXT_glVertexAttrib3dARB,
1690     EXT_glVertexAttrib3dNV,
1691     EXT_glVertexAttrib3dv,
1692     EXT_glVertexAttrib3dvARB,
1693     EXT_glVertexAttrib3dvNV,
1694     EXT_glVertexAttrib3f,
1695     EXT_glVertexAttrib3fARB,
1696     EXT_glVertexAttrib3fNV,
1697     EXT_glVertexAttrib3fv,
1698     EXT_glVertexAttrib3fvARB,
1699     EXT_glVertexAttrib3fvNV,
1700     EXT_glVertexAttrib3hNV,
1701     EXT_glVertexAttrib3hvNV,
1702     EXT_glVertexAttrib3s,
1703     EXT_glVertexAttrib3sARB,
1704     EXT_glVertexAttrib3sNV,
1705     EXT_glVertexAttrib3sv,
1706     EXT_glVertexAttrib3svARB,
1707     EXT_glVertexAttrib3svNV,
1708     EXT_glVertexAttrib4Nbv,
1709     EXT_glVertexAttrib4NbvARB,
1710     EXT_glVertexAttrib4Niv,
1711     EXT_glVertexAttrib4NivARB,
1712     EXT_glVertexAttrib4Nsv,
1713     EXT_glVertexAttrib4NsvARB,
1714     EXT_glVertexAttrib4Nub,
1715     EXT_glVertexAttrib4NubARB,
1716     EXT_glVertexAttrib4Nubv,
1717     EXT_glVertexAttrib4NubvARB,
1718     EXT_glVertexAttrib4Nuiv,
1719     EXT_glVertexAttrib4NuivARB,
1720     EXT_glVertexAttrib4Nusv,
1721     EXT_glVertexAttrib4NusvARB,
1722     EXT_glVertexAttrib4bv,
1723     EXT_glVertexAttrib4bvARB,
1724     EXT_glVertexAttrib4d,
1725     EXT_glVertexAttrib4dARB,
1726     EXT_glVertexAttrib4dNV,
1727     EXT_glVertexAttrib4dv,
1728     EXT_glVertexAttrib4dvARB,
1729     EXT_glVertexAttrib4dvNV,
1730     EXT_glVertexAttrib4f,
1731     EXT_glVertexAttrib4fARB,
1732     EXT_glVertexAttrib4fNV,
1733     EXT_glVertexAttrib4fv,
1734     EXT_glVertexAttrib4fvARB,
1735     EXT_glVertexAttrib4fvNV,
1736     EXT_glVertexAttrib4hNV,
1737     EXT_glVertexAttrib4hvNV,
1738     EXT_glVertexAttrib4iv,
1739     EXT_glVertexAttrib4ivARB,
1740     EXT_glVertexAttrib4s,
1741     EXT_glVertexAttrib4sARB,
1742     EXT_glVertexAttrib4sNV,
1743     EXT_glVertexAttrib4sv,
1744     EXT_glVertexAttrib4svARB,
1745     EXT_glVertexAttrib4svNV,
1746     EXT_glVertexAttrib4ubNV,
1747     EXT_glVertexAttrib4ubv,
1748     EXT_glVertexAttrib4ubvARB,
1749     EXT_glVertexAttrib4ubvNV,
1750     EXT_glVertexAttrib4uiv,
1751     EXT_glVertexAttrib4uivARB,
1752     EXT_glVertexAttrib4usv,
1753     EXT_glVertexAttrib4usvARB,
1754     EXT_glVertexAttribArrayObjectATI,
1755     EXT_glVertexAttribDivisor,
1756     EXT_glVertexAttribDivisorARB,
1757     EXT_glVertexAttribFormatNV,
1758     EXT_glVertexAttribI1i,
1759     EXT_glVertexAttribI1iEXT,
1760     EXT_glVertexAttribI1iv,
1761     EXT_glVertexAttribI1ivEXT,
1762     EXT_glVertexAttribI1ui,
1763     EXT_glVertexAttribI1uiEXT,
1764     EXT_glVertexAttribI1uiv,
1765     EXT_glVertexAttribI1uivEXT,
1766     EXT_glVertexAttribI2i,
1767     EXT_glVertexAttribI2iEXT,
1768     EXT_glVertexAttribI2iv,
1769     EXT_glVertexAttribI2ivEXT,
1770     EXT_glVertexAttribI2ui,
1771     EXT_glVertexAttribI2uiEXT,
1772     EXT_glVertexAttribI2uiv,
1773     EXT_glVertexAttribI2uivEXT,
1774     EXT_glVertexAttribI3i,
1775     EXT_glVertexAttribI3iEXT,
1776     EXT_glVertexAttribI3iv,
1777     EXT_glVertexAttribI3ivEXT,
1778     EXT_glVertexAttribI3ui,
1779     EXT_glVertexAttribI3uiEXT,
1780     EXT_glVertexAttribI3uiv,
1781     EXT_glVertexAttribI3uivEXT,
1782     EXT_glVertexAttribI4bv,
1783     EXT_glVertexAttribI4bvEXT,
1784     EXT_glVertexAttribI4i,
1785     EXT_glVertexAttribI4iEXT,
1786     EXT_glVertexAttribI4iv,
1787     EXT_glVertexAttribI4ivEXT,
1788     EXT_glVertexAttribI4sv,
1789     EXT_glVertexAttribI4svEXT,
1790     EXT_glVertexAttribI4ubv,
1791     EXT_glVertexAttribI4ubvEXT,
1792     EXT_glVertexAttribI4ui,
1793     EXT_glVertexAttribI4uiEXT,
1794     EXT_glVertexAttribI4uiv,
1795     EXT_glVertexAttribI4uivEXT,
1796     EXT_glVertexAttribI4usv,
1797     EXT_glVertexAttribI4usvEXT,
1798     EXT_glVertexAttribIFormatNV,
1799     EXT_glVertexAttribIPointer,
1800     EXT_glVertexAttribIPointerEXT,
1801     EXT_glVertexAttribL1d,
1802     EXT_glVertexAttribL1dEXT,
1803     EXT_glVertexAttribL1dv,
1804     EXT_glVertexAttribL1dvEXT,
1805     EXT_glVertexAttribL1i64NV,
1806     EXT_glVertexAttribL1i64vNV,
1807     EXT_glVertexAttribL1ui64NV,
1808     EXT_glVertexAttribL1ui64vNV,
1809     EXT_glVertexAttribL2d,
1810     EXT_glVertexAttribL2dEXT,
1811     EXT_glVertexAttribL2dv,
1812     EXT_glVertexAttribL2dvEXT,
1813     EXT_glVertexAttribL2i64NV,
1814     EXT_glVertexAttribL2i64vNV,
1815     EXT_glVertexAttribL2ui64NV,
1816     EXT_glVertexAttribL2ui64vNV,
1817     EXT_glVertexAttribL3d,
1818     EXT_glVertexAttribL3dEXT,
1819     EXT_glVertexAttribL3dv,
1820     EXT_glVertexAttribL3dvEXT,
1821     EXT_glVertexAttribL3i64NV,
1822     EXT_glVertexAttribL3i64vNV,
1823     EXT_glVertexAttribL3ui64NV,
1824     EXT_glVertexAttribL3ui64vNV,
1825     EXT_glVertexAttribL4d,
1826     EXT_glVertexAttribL4dEXT,
1827     EXT_glVertexAttribL4dv,
1828     EXT_glVertexAttribL4dvEXT,
1829     EXT_glVertexAttribL4i64NV,
1830     EXT_glVertexAttribL4i64vNV,
1831     EXT_glVertexAttribL4ui64NV,
1832     EXT_glVertexAttribL4ui64vNV,
1833     EXT_glVertexAttribLFormatNV,
1834     EXT_glVertexAttribLPointer,
1835     EXT_glVertexAttribLPointerEXT,
1836     EXT_glVertexAttribP1ui,
1837     EXT_glVertexAttribP1uiv,
1838     EXT_glVertexAttribP2ui,
1839     EXT_glVertexAttribP2uiv,
1840     EXT_glVertexAttribP3ui,
1841     EXT_glVertexAttribP3uiv,
1842     EXT_glVertexAttribP4ui,
1843     EXT_glVertexAttribP4uiv,
1844     EXT_glVertexAttribPointer,
1845     EXT_glVertexAttribPointerARB,
1846     EXT_glVertexAttribPointerNV,
1847     EXT_glVertexAttribs1dvNV,
1848     EXT_glVertexAttribs1fvNV,
1849     EXT_glVertexAttribs1hvNV,
1850     EXT_glVertexAttribs1svNV,
1851     EXT_glVertexAttribs2dvNV,
1852     EXT_glVertexAttribs2fvNV,
1853     EXT_glVertexAttribs2hvNV,
1854     EXT_glVertexAttribs2svNV,
1855     EXT_glVertexAttribs3dvNV,
1856     EXT_glVertexAttribs3fvNV,
1857     EXT_glVertexAttribs3hvNV,
1858     EXT_glVertexAttribs3svNV,
1859     EXT_glVertexAttribs4dvNV,
1860     EXT_glVertexAttribs4fvNV,
1861     EXT_glVertexAttribs4hvNV,
1862     EXT_glVertexAttribs4svNV,
1863     EXT_glVertexAttribs4ubvNV,
1864     EXT_glVertexBlendARB,
1865     EXT_glVertexBlendEnvfATI,
1866     EXT_glVertexBlendEnviATI,
1867     EXT_glVertexFormatNV,
1868     EXT_glVertexP2ui,
1869     EXT_glVertexP2uiv,
1870     EXT_glVertexP3ui,
1871     EXT_glVertexP3uiv,
1872     EXT_glVertexP4ui,
1873     EXT_glVertexP4uiv,
1874     EXT_glVertexPointerEXT,
1875     EXT_glVertexPointerListIBM,
1876     EXT_glVertexPointervINTEL,
1877     EXT_glVertexStream1dATI,
1878     EXT_glVertexStream1dvATI,
1879     EXT_glVertexStream1fATI,
1880     EXT_glVertexStream1fvATI,
1881     EXT_glVertexStream1iATI,
1882     EXT_glVertexStream1ivATI,
1883     EXT_glVertexStream1sATI,
1884     EXT_glVertexStream1svATI,
1885     EXT_glVertexStream2dATI,
1886     EXT_glVertexStream2dvATI,
1887     EXT_glVertexStream2fATI,
1888     EXT_glVertexStream2fvATI,
1889     EXT_glVertexStream2iATI,
1890     EXT_glVertexStream2ivATI,
1891     EXT_glVertexStream2sATI,
1892     EXT_glVertexStream2svATI,
1893     EXT_glVertexStream3dATI,
1894     EXT_glVertexStream3dvATI,
1895     EXT_glVertexStream3fATI,
1896     EXT_glVertexStream3fvATI,
1897     EXT_glVertexStream3iATI,
1898     EXT_glVertexStream3ivATI,
1899     EXT_glVertexStream3sATI,
1900     EXT_glVertexStream3svATI,
1901     EXT_glVertexStream4dATI,
1902     EXT_glVertexStream4dvATI,
1903     EXT_glVertexStream4fATI,
1904     EXT_glVertexStream4fvATI,
1905     EXT_glVertexStream4iATI,
1906     EXT_glVertexStream4ivATI,
1907     EXT_glVertexStream4sATI,
1908     EXT_glVertexStream4svATI,
1909     EXT_glVertexWeightPointerEXT,
1910     EXT_glVertexWeightfEXT,
1911     EXT_glVertexWeightfvEXT,
1912     EXT_glVertexWeighthNV,
1913     EXT_glVertexWeighthvNV,
1914     EXT_glVideoCaptureNV,
1915     EXT_glVideoCaptureStreamParameterdvNV,
1916     EXT_glVideoCaptureStreamParameterfvNV,
1917     EXT_glVideoCaptureStreamParameterivNV,
1918     EXT_glViewportArrayv,
1919     EXT_glViewportIndexedf,
1920     EXT_glViewportIndexedfv,
1921     EXT_glWaitSync,
1922     EXT_glWeightPointerARB,
1923     EXT_glWeightbvARB,
1924     EXT_glWeightdvARB,
1925     EXT_glWeightfvARB,
1926     EXT_glWeightivARB,
1927     EXT_glWeightsvARB,
1928     EXT_glWeightubvARB,
1929     EXT_glWeightuivARB,
1930     EXT_glWeightusvARB,
1931     EXT_glWindowPos2d,
1932     EXT_glWindowPos2dARB,
1933     EXT_glWindowPos2dMESA,
1934     EXT_glWindowPos2dv,
1935     EXT_glWindowPos2dvARB,
1936     EXT_glWindowPos2dvMESA,
1937     EXT_glWindowPos2f,
1938     EXT_glWindowPos2fARB,
1939     EXT_glWindowPos2fMESA,
1940     EXT_glWindowPos2fv,
1941     EXT_glWindowPos2fvARB,
1942     EXT_glWindowPos2fvMESA,
1943     EXT_glWindowPos2i,
1944     EXT_glWindowPos2iARB,
1945     EXT_glWindowPos2iMESA,
1946     EXT_glWindowPos2iv,
1947     EXT_glWindowPos2ivARB,
1948     EXT_glWindowPos2ivMESA,
1949     EXT_glWindowPos2s,
1950     EXT_glWindowPos2sARB,
1951     EXT_glWindowPos2sMESA,
1952     EXT_glWindowPos2sv,
1953     EXT_glWindowPos2svARB,
1954     EXT_glWindowPos2svMESA,
1955     EXT_glWindowPos3d,
1956     EXT_glWindowPos3dARB,
1957     EXT_glWindowPos3dMESA,
1958     EXT_glWindowPos3dv,
1959     EXT_glWindowPos3dvARB,
1960     EXT_glWindowPos3dvMESA,
1961     EXT_glWindowPos3f,
1962     EXT_glWindowPos3fARB,
1963     EXT_glWindowPos3fMESA,
1964     EXT_glWindowPos3fv,
1965     EXT_glWindowPos3fvARB,
1966     EXT_glWindowPos3fvMESA,
1967     EXT_glWindowPos3i,
1968     EXT_glWindowPos3iARB,
1969     EXT_glWindowPos3iMESA,
1970     EXT_glWindowPos3iv,
1971     EXT_glWindowPos3ivARB,
1972     EXT_glWindowPos3ivMESA,
1973     EXT_glWindowPos3s,
1974     EXT_glWindowPos3sARB,
1975     EXT_glWindowPos3sMESA,
1976     EXT_glWindowPos3sv,
1977     EXT_glWindowPos3svARB,
1978     EXT_glWindowPos3svMESA,
1979     EXT_glWindowPos4dMESA,
1980     EXT_glWindowPos4dvMESA,
1981     EXT_glWindowPos4fMESA,
1982     EXT_glWindowPos4fvMESA,
1983     EXT_glWindowPos4iMESA,
1984     EXT_glWindowPos4ivMESA,
1985     EXT_glWindowPos4sMESA,
1986     EXT_glWindowPos4svMESA,
1987     EXT_glWriteMaskEXT,
1988     NB_EXTENSIONS
1989 };
1990
1991 const int extension_registry_size = NB_EXTENSIONS;
1992 void *extension_funcs[NB_EXTENSIONS];
1993
1994 /* The thunks themselves....*/
1995 static void WINAPI wine_glActiveProgramEXT( GLuint program ) {
1996   void (*func_glActiveProgramEXT)( GLuint ) = extension_funcs[EXT_glActiveProgramEXT];
1997   TRACE("(%d)\n", program );
1998   ENTER_GL();
1999   func_glActiveProgramEXT( program );
2000   LEAVE_GL();
2001 }
2002
2003 static void WINAPI wine_glActiveShaderProgram( GLuint pipeline, GLuint program ) {
2004   void (*func_glActiveShaderProgram)( GLuint, GLuint ) = extension_funcs[EXT_glActiveShaderProgram];
2005   TRACE("(%d, %d)\n", pipeline, program );
2006   ENTER_GL();
2007   func_glActiveShaderProgram( pipeline, program );
2008   LEAVE_GL();
2009 }
2010
2011 static void WINAPI wine_glActiveStencilFaceEXT( GLenum face ) {
2012   void (*func_glActiveStencilFaceEXT)( GLenum ) = extension_funcs[EXT_glActiveStencilFaceEXT];
2013   TRACE("(%d)\n", face );
2014   ENTER_GL();
2015   func_glActiveStencilFaceEXT( face );
2016   LEAVE_GL();
2017 }
2018
2019 static void WINAPI wine_glActiveTexture( GLenum texture ) {
2020   void (*func_glActiveTexture)( GLenum ) = extension_funcs[EXT_glActiveTexture];
2021   TRACE("(%d)\n", texture );
2022   ENTER_GL();
2023   func_glActiveTexture( texture );
2024   LEAVE_GL();
2025 }
2026
2027 static void WINAPI wine_glActiveTextureARB( GLenum texture ) {
2028   void (*func_glActiveTextureARB)( GLenum ) = extension_funcs[EXT_glActiveTextureARB];
2029   TRACE("(%d)\n", texture );
2030   ENTER_GL();
2031   func_glActiveTextureARB( texture );
2032   LEAVE_GL();
2033 }
2034
2035 static void WINAPI wine_glActiveVaryingNV( GLuint program, char* name ) {
2036   void (*func_glActiveVaryingNV)( GLuint, char* ) = extension_funcs[EXT_glActiveVaryingNV];
2037   TRACE("(%d, %p)\n", program, name );
2038   ENTER_GL();
2039   func_glActiveVaryingNV( program, name );
2040   LEAVE_GL();
2041 }
2042
2043 static void WINAPI wine_glAlphaFragmentOp1ATI( GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod ) {
2044   void (*func_glAlphaFragmentOp1ATI)( GLenum, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glAlphaFragmentOp1ATI];
2045   TRACE("(%d, %d, %d, %d, %d, %d)\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod );
2046   ENTER_GL();
2047   func_glAlphaFragmentOp1ATI( op, dst, dstMod, arg1, arg1Rep, arg1Mod );
2048   LEAVE_GL();
2049 }
2050
2051 static void WINAPI wine_glAlphaFragmentOp2ATI( GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod ) {
2052   void (*func_glAlphaFragmentOp2ATI)( GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glAlphaFragmentOp2ATI];
2053   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod );
2054   ENTER_GL();
2055   func_glAlphaFragmentOp2ATI( op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod );
2056   LEAVE_GL();
2057 }
2058
2059 static void WINAPI wine_glAlphaFragmentOp3ATI( GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod ) {
2060   void (*func_glAlphaFragmentOp3ATI)( GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glAlphaFragmentOp3ATI];
2061   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod );
2062   ENTER_GL();
2063   func_glAlphaFragmentOp3ATI( op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod );
2064   LEAVE_GL();
2065 }
2066
2067 static void WINAPI wine_glApplyTextureEXT( GLenum mode ) {
2068   void (*func_glApplyTextureEXT)( GLenum ) = extension_funcs[EXT_glApplyTextureEXT];
2069   TRACE("(%d)\n", mode );
2070   ENTER_GL();
2071   func_glApplyTextureEXT( mode );
2072   LEAVE_GL();
2073 }
2074
2075 static GLboolean WINAPI wine_glAreProgramsResidentNV( GLsizei n, GLuint* programs, GLboolean* residences ) {
2076   GLboolean ret_value;
2077   GLboolean (*func_glAreProgramsResidentNV)( GLsizei, GLuint*, GLboolean* ) = extension_funcs[EXT_glAreProgramsResidentNV];
2078   TRACE("(%d, %p, %p)\n", n, programs, residences );
2079   ENTER_GL();
2080   ret_value = func_glAreProgramsResidentNV( n, programs, residences );
2081   LEAVE_GL();
2082   return ret_value;
2083 }
2084
2085 static GLboolean WINAPI wine_glAreTexturesResidentEXT( GLsizei n, GLuint* textures, GLboolean* residences ) {
2086   GLboolean ret_value;
2087   GLboolean (*func_glAreTexturesResidentEXT)( GLsizei, GLuint*, GLboolean* ) = extension_funcs[EXT_glAreTexturesResidentEXT];
2088   TRACE("(%d, %p, %p)\n", n, textures, residences );
2089   ENTER_GL();
2090   ret_value = func_glAreTexturesResidentEXT( n, textures, residences );
2091   LEAVE_GL();
2092   return ret_value;
2093 }
2094
2095 static void WINAPI wine_glArrayElementEXT( GLint i ) {
2096   void (*func_glArrayElementEXT)( GLint ) = extension_funcs[EXT_glArrayElementEXT];
2097   TRACE("(%d)\n", i );
2098   ENTER_GL();
2099   func_glArrayElementEXT( i );
2100   LEAVE_GL();
2101 }
2102
2103 static void WINAPI wine_glArrayObjectATI( GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset ) {
2104   void (*func_glArrayObjectATI)( GLenum, GLint, GLenum, GLsizei, GLuint, GLuint ) = extension_funcs[EXT_glArrayObjectATI];
2105   TRACE("(%d, %d, %d, %d, %d, %d)\n", array, size, type, stride, buffer, offset );
2106   ENTER_GL();
2107   func_glArrayObjectATI( array, size, type, stride, buffer, offset );
2108   LEAVE_GL();
2109 }
2110
2111 static void WINAPI wine_glAsyncMarkerSGIX( GLuint marker ) {
2112   void (*func_glAsyncMarkerSGIX)( GLuint ) = extension_funcs[EXT_glAsyncMarkerSGIX];
2113   TRACE("(%d)\n", marker );
2114   ENTER_GL();
2115   func_glAsyncMarkerSGIX( marker );
2116   LEAVE_GL();
2117 }
2118
2119 static void WINAPI wine_glAttachObjectARB( unsigned int containerObj, unsigned int obj ) {
2120   void (*func_glAttachObjectARB)( unsigned int, unsigned int ) = extension_funcs[EXT_glAttachObjectARB];
2121   TRACE("(%d, %d)\n", containerObj, obj );
2122   ENTER_GL();
2123   func_glAttachObjectARB( containerObj, obj );
2124   LEAVE_GL();
2125 }
2126
2127 static void WINAPI wine_glAttachShader( GLuint program, GLuint shader ) {
2128   void (*func_glAttachShader)( GLuint, GLuint ) = extension_funcs[EXT_glAttachShader];
2129   TRACE("(%d, %d)\n", program, shader );
2130   ENTER_GL();
2131   func_glAttachShader( program, shader );
2132   LEAVE_GL();
2133 }
2134
2135 static void WINAPI wine_glBeginConditionalRender( GLuint id, GLenum mode ) {
2136   void (*func_glBeginConditionalRender)( GLuint, GLenum ) = extension_funcs[EXT_glBeginConditionalRender];
2137   TRACE("(%d, %d)\n", id, mode );
2138   ENTER_GL();
2139   func_glBeginConditionalRender( id, mode );
2140   LEAVE_GL();
2141 }
2142
2143 static void WINAPI wine_glBeginConditionalRenderNV( GLuint id, GLenum mode ) {
2144   void (*func_glBeginConditionalRenderNV)( GLuint, GLenum ) = extension_funcs[EXT_glBeginConditionalRenderNV];
2145   TRACE("(%d, %d)\n", id, mode );
2146   ENTER_GL();
2147   func_glBeginConditionalRenderNV( id, mode );
2148   LEAVE_GL();
2149 }
2150
2151 static void WINAPI wine_glBeginFragmentShaderATI( void ) {
2152   void (*func_glBeginFragmentShaderATI)( void ) = extension_funcs[EXT_glBeginFragmentShaderATI];
2153   TRACE("()\n");
2154   ENTER_GL();
2155   func_glBeginFragmentShaderATI( );
2156   LEAVE_GL();
2157 }
2158
2159 static void WINAPI wine_glBeginOcclusionQueryNV( GLuint id ) {
2160   void (*func_glBeginOcclusionQueryNV)( GLuint ) = extension_funcs[EXT_glBeginOcclusionQueryNV];
2161   TRACE("(%d)\n", id );
2162   ENTER_GL();
2163   func_glBeginOcclusionQueryNV( id );
2164   LEAVE_GL();
2165 }
2166
2167 static void WINAPI wine_glBeginPerfMonitorAMD( GLuint monitor ) {
2168   void (*func_glBeginPerfMonitorAMD)( GLuint ) = extension_funcs[EXT_glBeginPerfMonitorAMD];
2169   TRACE("(%d)\n", monitor );
2170   ENTER_GL();
2171   func_glBeginPerfMonitorAMD( monitor );
2172   LEAVE_GL();
2173 }
2174
2175 static void WINAPI wine_glBeginQuery( GLenum target, GLuint id ) {
2176   void (*func_glBeginQuery)( GLenum, GLuint ) = extension_funcs[EXT_glBeginQuery];
2177   TRACE("(%d, %d)\n", target, id );
2178   ENTER_GL();
2179   func_glBeginQuery( target, id );
2180   LEAVE_GL();
2181 }
2182
2183 static void WINAPI wine_glBeginQueryARB( GLenum target, GLuint id ) {
2184   void (*func_glBeginQueryARB)( GLenum, GLuint ) = extension_funcs[EXT_glBeginQueryARB];
2185   TRACE("(%d, %d)\n", target, id );
2186   ENTER_GL();
2187   func_glBeginQueryARB( target, id );
2188   LEAVE_GL();
2189 }
2190
2191 static void WINAPI wine_glBeginQueryIndexed( GLenum target, GLuint index, GLuint id ) {
2192   void (*func_glBeginQueryIndexed)( GLenum, GLuint, GLuint ) = extension_funcs[EXT_glBeginQueryIndexed];
2193   TRACE("(%d, %d, %d)\n", target, index, id );
2194   ENTER_GL();
2195   func_glBeginQueryIndexed( target, index, id );
2196   LEAVE_GL();
2197 }
2198
2199 static void WINAPI wine_glBeginTransformFeedback( GLenum primitiveMode ) {
2200   void (*func_glBeginTransformFeedback)( GLenum ) = extension_funcs[EXT_glBeginTransformFeedback];
2201   TRACE("(%d)\n", primitiveMode );
2202   ENTER_GL();
2203   func_glBeginTransformFeedback( primitiveMode );
2204   LEAVE_GL();
2205 }
2206
2207 static void WINAPI wine_glBeginTransformFeedbackEXT( GLenum primitiveMode ) {
2208   void (*func_glBeginTransformFeedbackEXT)( GLenum ) = extension_funcs[EXT_glBeginTransformFeedbackEXT];
2209   TRACE("(%d)\n", primitiveMode );
2210   ENTER_GL();
2211   func_glBeginTransformFeedbackEXT( primitiveMode );
2212   LEAVE_GL();
2213 }
2214
2215 static void WINAPI wine_glBeginTransformFeedbackNV( GLenum primitiveMode ) {
2216   void (*func_glBeginTransformFeedbackNV)( GLenum ) = extension_funcs[EXT_glBeginTransformFeedbackNV];
2217   TRACE("(%d)\n", primitiveMode );
2218   ENTER_GL();
2219   func_glBeginTransformFeedbackNV( primitiveMode );
2220   LEAVE_GL();
2221 }
2222
2223 static void WINAPI wine_glBeginVertexShaderEXT( void ) {
2224   void (*func_glBeginVertexShaderEXT)( void ) = extension_funcs[EXT_glBeginVertexShaderEXT];
2225   TRACE("()\n");
2226   ENTER_GL();
2227   func_glBeginVertexShaderEXT( );
2228   LEAVE_GL();
2229 }
2230
2231 static void WINAPI wine_glBeginVideoCaptureNV( GLuint video_capture_slot ) {
2232   void (*func_glBeginVideoCaptureNV)( GLuint ) = extension_funcs[EXT_glBeginVideoCaptureNV];
2233   TRACE("(%d)\n", video_capture_slot );
2234   ENTER_GL();
2235   func_glBeginVideoCaptureNV( video_capture_slot );
2236   LEAVE_GL();
2237 }
2238
2239 static void WINAPI wine_glBindAttribLocation( GLuint program, GLuint index, char* name ) {
2240   void (*func_glBindAttribLocation)( GLuint, GLuint, char* ) = extension_funcs[EXT_glBindAttribLocation];
2241   TRACE("(%d, %d, %p)\n", program, index, name );
2242   ENTER_GL();
2243   func_glBindAttribLocation( program, index, name );
2244   LEAVE_GL();
2245 }
2246
2247 static void WINAPI wine_glBindAttribLocationARB( unsigned int programObj, GLuint index, char* name ) {
2248   void (*func_glBindAttribLocationARB)( unsigned int, GLuint, char* ) = extension_funcs[EXT_glBindAttribLocationARB];
2249   TRACE("(%d, %d, %p)\n", programObj, index, name );
2250   ENTER_GL();
2251   func_glBindAttribLocationARB( programObj, index, name );
2252   LEAVE_GL();
2253 }
2254
2255 static void WINAPI wine_glBindBuffer( GLenum target, GLuint buffer ) {
2256   void (*func_glBindBuffer)( GLenum, GLuint ) = extension_funcs[EXT_glBindBuffer];
2257   TRACE("(%d, %d)\n", target, buffer );
2258   ENTER_GL();
2259   func_glBindBuffer( target, buffer );
2260   LEAVE_GL();
2261 }
2262
2263 static void WINAPI wine_glBindBufferARB( GLenum target, GLuint buffer ) {
2264   void (*func_glBindBufferARB)( GLenum, GLuint ) = extension_funcs[EXT_glBindBufferARB];
2265   TRACE("(%d, %d)\n", target, buffer );
2266   ENTER_GL();
2267   func_glBindBufferARB( target, buffer );
2268   LEAVE_GL();
2269 }
2270
2271 static void WINAPI wine_glBindBufferBase( GLenum target, GLuint index, GLuint buffer ) {
2272   void (*func_glBindBufferBase)( GLenum, GLuint, GLuint ) = extension_funcs[EXT_glBindBufferBase];
2273   TRACE("(%d, %d, %d)\n", target, index, buffer );
2274   ENTER_GL();
2275   func_glBindBufferBase( target, index, buffer );
2276   LEAVE_GL();
2277 }
2278
2279 static void WINAPI wine_glBindBufferBaseEXT( GLenum target, GLuint index, GLuint buffer ) {
2280   void (*func_glBindBufferBaseEXT)( GLenum, GLuint, GLuint ) = extension_funcs[EXT_glBindBufferBaseEXT];
2281   TRACE("(%d, %d, %d)\n", target, index, buffer );
2282   ENTER_GL();
2283   func_glBindBufferBaseEXT( target, index, buffer );
2284   LEAVE_GL();
2285 }
2286
2287 static void WINAPI wine_glBindBufferBaseNV( GLenum target, GLuint index, GLuint buffer ) {
2288   void (*func_glBindBufferBaseNV)( GLenum, GLuint, GLuint ) = extension_funcs[EXT_glBindBufferBaseNV];
2289   TRACE("(%d, %d, %d)\n", target, index, buffer );
2290   ENTER_GL();
2291   func_glBindBufferBaseNV( target, index, buffer );
2292   LEAVE_GL();
2293 }
2294
2295 static void WINAPI wine_glBindBufferOffsetEXT( GLenum target, GLuint index, GLuint buffer, INT_PTR offset ) {
2296   void (*func_glBindBufferOffsetEXT)( GLenum, GLuint, GLuint, INT_PTR ) = extension_funcs[EXT_glBindBufferOffsetEXT];
2297   TRACE("(%d, %d, %d, %ld)\n", target, index, buffer, offset );
2298   ENTER_GL();
2299   func_glBindBufferOffsetEXT( target, index, buffer, offset );
2300   LEAVE_GL();
2301 }
2302
2303 static void WINAPI wine_glBindBufferOffsetNV( GLenum target, GLuint index, GLuint buffer, INT_PTR offset ) {
2304   void (*func_glBindBufferOffsetNV)( GLenum, GLuint, GLuint, INT_PTR ) = extension_funcs[EXT_glBindBufferOffsetNV];
2305   TRACE("(%d, %d, %d, %ld)\n", target, index, buffer, offset );
2306   ENTER_GL();
2307   func_glBindBufferOffsetNV( target, index, buffer, offset );
2308   LEAVE_GL();
2309 }
2310
2311 static void WINAPI wine_glBindBufferRange( GLenum target, GLuint index, GLuint buffer, INT_PTR offset, INT_PTR size ) {
2312   void (*func_glBindBufferRange)( GLenum, GLuint, GLuint, INT_PTR, INT_PTR ) = extension_funcs[EXT_glBindBufferRange];
2313   TRACE("(%d, %d, %d, %ld, %ld)\n", target, index, buffer, offset, size );
2314   ENTER_GL();
2315   func_glBindBufferRange( target, index, buffer, offset, size );
2316   LEAVE_GL();
2317 }
2318
2319 static void WINAPI wine_glBindBufferRangeEXT( GLenum target, GLuint index, GLuint buffer, INT_PTR offset, INT_PTR size ) {
2320   void (*func_glBindBufferRangeEXT)( GLenum, GLuint, GLuint, INT_PTR, INT_PTR ) = extension_funcs[EXT_glBindBufferRangeEXT];
2321   TRACE("(%d, %d, %d, %ld, %ld)\n", target, index, buffer, offset, size );
2322   ENTER_GL();
2323   func_glBindBufferRangeEXT( target, index, buffer, offset, size );
2324   LEAVE_GL();
2325 }
2326
2327 static void WINAPI wine_glBindBufferRangeNV( GLenum target, GLuint index, GLuint buffer, INT_PTR offset, INT_PTR size ) {
2328   void (*func_glBindBufferRangeNV)( GLenum, GLuint, GLuint, INT_PTR, INT_PTR ) = extension_funcs[EXT_glBindBufferRangeNV];
2329   TRACE("(%d, %d, %d, %ld, %ld)\n", target, index, buffer, offset, size );
2330   ENTER_GL();
2331   func_glBindBufferRangeNV( target, index, buffer, offset, size );
2332   LEAVE_GL();
2333 }
2334
2335 static void WINAPI wine_glBindFragDataLocation( GLuint program, GLuint color, char* name ) {
2336   void (*func_glBindFragDataLocation)( GLuint, GLuint, char* ) = extension_funcs[EXT_glBindFragDataLocation];
2337   TRACE("(%d, %d, %p)\n", program, color, name );
2338   ENTER_GL();
2339   func_glBindFragDataLocation( program, color, name );
2340   LEAVE_GL();
2341 }
2342
2343 static void WINAPI wine_glBindFragDataLocationEXT( GLuint program, GLuint color, char* name ) {
2344   void (*func_glBindFragDataLocationEXT)( GLuint, GLuint, char* ) = extension_funcs[EXT_glBindFragDataLocationEXT];
2345   TRACE("(%d, %d, %p)\n", program, color, name );
2346   ENTER_GL();
2347   func_glBindFragDataLocationEXT( program, color, name );
2348   LEAVE_GL();
2349 }
2350
2351 static void WINAPI wine_glBindFragDataLocationIndexed( GLuint program, GLuint colorNumber, GLuint index, char* name ) {
2352   void (*func_glBindFragDataLocationIndexed)( GLuint, GLuint, GLuint, char* ) = extension_funcs[EXT_glBindFragDataLocationIndexed];
2353   TRACE("(%d, %d, %d, %p)\n", program, colorNumber, index, name );
2354   ENTER_GL();
2355   func_glBindFragDataLocationIndexed( program, colorNumber, index, name );
2356   LEAVE_GL();
2357 }
2358
2359 static void WINAPI wine_glBindFragmentShaderATI( GLuint id ) {
2360   void (*func_glBindFragmentShaderATI)( GLuint ) = extension_funcs[EXT_glBindFragmentShaderATI];
2361   TRACE("(%d)\n", id );
2362   ENTER_GL();
2363   func_glBindFragmentShaderATI( id );
2364   LEAVE_GL();
2365 }
2366
2367 static void WINAPI wine_glBindFramebuffer( GLenum target, GLuint framebuffer ) {
2368   void (*func_glBindFramebuffer)( GLenum, GLuint ) = extension_funcs[EXT_glBindFramebuffer];
2369   TRACE("(%d, %d)\n", target, framebuffer );
2370   ENTER_GL();
2371   func_glBindFramebuffer( target, framebuffer );
2372   LEAVE_GL();
2373 }
2374
2375 static void WINAPI wine_glBindFramebufferEXT( GLenum target, GLuint framebuffer ) {
2376   void (*func_glBindFramebufferEXT)( GLenum, GLuint ) = extension_funcs[EXT_glBindFramebufferEXT];
2377   TRACE("(%d, %d)\n", target, framebuffer );
2378   ENTER_GL();
2379   func_glBindFramebufferEXT( target, framebuffer );
2380   LEAVE_GL();
2381 }
2382
2383 static void WINAPI wine_glBindImageTextureEXT( GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format ) {
2384   void (*func_glBindImageTextureEXT)( GLuint, GLuint, GLint, GLboolean, GLint, GLenum, GLint ) = extension_funcs[EXT_glBindImageTextureEXT];
2385   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", index, texture, level, layered, layer, access, format );
2386   ENTER_GL();
2387   func_glBindImageTextureEXT( index, texture, level, layered, layer, access, format );
2388   LEAVE_GL();
2389 }
2390
2391 static GLuint WINAPI wine_glBindLightParameterEXT( GLenum light, GLenum value ) {
2392   GLuint ret_value;
2393   GLuint (*func_glBindLightParameterEXT)( GLenum, GLenum ) = extension_funcs[EXT_glBindLightParameterEXT];
2394   TRACE("(%d, %d)\n", light, value );
2395   ENTER_GL();
2396   ret_value = func_glBindLightParameterEXT( light, value );
2397   LEAVE_GL();
2398   return ret_value;
2399 }
2400
2401 static GLuint WINAPI wine_glBindMaterialParameterEXT( GLenum face, GLenum value ) {
2402   GLuint ret_value;
2403   GLuint (*func_glBindMaterialParameterEXT)( GLenum, GLenum ) = extension_funcs[EXT_glBindMaterialParameterEXT];
2404   TRACE("(%d, %d)\n", face, value );
2405   ENTER_GL();
2406   ret_value = func_glBindMaterialParameterEXT( face, value );
2407   LEAVE_GL();
2408   return ret_value;
2409 }
2410
2411 static void WINAPI wine_glBindMultiTextureEXT( GLenum texunit, GLenum target, GLuint texture ) {
2412   void (*func_glBindMultiTextureEXT)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glBindMultiTextureEXT];
2413   TRACE("(%d, %d, %d)\n", texunit, target, texture );
2414   ENTER_GL();
2415   func_glBindMultiTextureEXT( texunit, target, texture );
2416   LEAVE_GL();
2417 }
2418
2419 static GLuint WINAPI wine_glBindParameterEXT( GLenum value ) {
2420   GLuint ret_value;
2421   GLuint (*func_glBindParameterEXT)( GLenum ) = extension_funcs[EXT_glBindParameterEXT];
2422   TRACE("(%d)\n", value );
2423   ENTER_GL();
2424   ret_value = func_glBindParameterEXT( value );
2425   LEAVE_GL();
2426   return ret_value;
2427 }
2428
2429 static void WINAPI wine_glBindProgramARB( GLenum target, GLuint program ) {
2430   void (*func_glBindProgramARB)( GLenum, GLuint ) = extension_funcs[EXT_glBindProgramARB];
2431   TRACE("(%d, %d)\n", target, program );
2432   ENTER_GL();
2433   func_glBindProgramARB( target, program );
2434   LEAVE_GL();
2435 }
2436
2437 static void WINAPI wine_glBindProgramNV( GLenum target, GLuint id ) {
2438   void (*func_glBindProgramNV)( GLenum, GLuint ) = extension_funcs[EXT_glBindProgramNV];
2439   TRACE("(%d, %d)\n", target, id );
2440   ENTER_GL();
2441   func_glBindProgramNV( target, id );
2442   LEAVE_GL();
2443 }
2444
2445 static void WINAPI wine_glBindProgramPipeline( GLuint pipeline ) {
2446   void (*func_glBindProgramPipeline)( GLuint ) = extension_funcs[EXT_glBindProgramPipeline];
2447   TRACE("(%d)\n", pipeline );
2448   ENTER_GL();
2449   func_glBindProgramPipeline( pipeline );
2450   LEAVE_GL();
2451 }
2452
2453 static void WINAPI wine_glBindRenderbuffer( GLenum target, GLuint renderbuffer ) {
2454   void (*func_glBindRenderbuffer)( GLenum, GLuint ) = extension_funcs[EXT_glBindRenderbuffer];
2455   TRACE("(%d, %d)\n", target, renderbuffer );
2456   ENTER_GL();
2457   func_glBindRenderbuffer( target, renderbuffer );
2458   LEAVE_GL();
2459 }
2460
2461 static void WINAPI wine_glBindRenderbufferEXT( GLenum target, GLuint renderbuffer ) {
2462   void (*func_glBindRenderbufferEXT)( GLenum, GLuint ) = extension_funcs[EXT_glBindRenderbufferEXT];
2463   TRACE("(%d, %d)\n", target, renderbuffer );
2464   ENTER_GL();
2465   func_glBindRenderbufferEXT( target, renderbuffer );
2466   LEAVE_GL();
2467 }
2468
2469 static void WINAPI wine_glBindSampler( GLuint unit, GLuint sampler ) {
2470   void (*func_glBindSampler)( GLuint, GLuint ) = extension_funcs[EXT_glBindSampler];
2471   TRACE("(%d, %d)\n", unit, sampler );
2472   ENTER_GL();
2473   func_glBindSampler( unit, sampler );
2474   LEAVE_GL();
2475 }
2476
2477 static GLuint WINAPI wine_glBindTexGenParameterEXT( GLenum unit, GLenum coord, GLenum value ) {
2478   GLuint ret_value;
2479   GLuint (*func_glBindTexGenParameterEXT)( GLenum, GLenum, GLenum ) = extension_funcs[EXT_glBindTexGenParameterEXT];
2480   TRACE("(%d, %d, %d)\n", unit, coord, value );
2481   ENTER_GL();
2482   ret_value = func_glBindTexGenParameterEXT( unit, coord, value );
2483   LEAVE_GL();
2484   return ret_value;
2485 }
2486
2487 static void WINAPI wine_glBindTextureEXT( GLenum target, GLuint texture ) {
2488   void (*func_glBindTextureEXT)( GLenum, GLuint ) = extension_funcs[EXT_glBindTextureEXT];
2489   TRACE("(%d, %d)\n", target, texture );
2490   ENTER_GL();
2491   func_glBindTextureEXT( target, texture );
2492   LEAVE_GL();
2493 }
2494
2495 static GLuint WINAPI wine_glBindTextureUnitParameterEXT( GLenum unit, GLenum value ) {
2496   GLuint ret_value;
2497   GLuint (*func_glBindTextureUnitParameterEXT)( GLenum, GLenum ) = extension_funcs[EXT_glBindTextureUnitParameterEXT];
2498   TRACE("(%d, %d)\n", unit, value );
2499   ENTER_GL();
2500   ret_value = func_glBindTextureUnitParameterEXT( unit, value );
2501   LEAVE_GL();
2502   return ret_value;
2503 }
2504
2505 static void WINAPI wine_glBindTransformFeedback( GLenum target, GLuint id ) {
2506   void (*func_glBindTransformFeedback)( GLenum, GLuint ) = extension_funcs[EXT_glBindTransformFeedback];
2507   TRACE("(%d, %d)\n", target, id );
2508   ENTER_GL();
2509   func_glBindTransformFeedback( target, id );
2510   LEAVE_GL();
2511 }
2512
2513 static void WINAPI wine_glBindTransformFeedbackNV( GLenum target, GLuint id ) {
2514   void (*func_glBindTransformFeedbackNV)( GLenum, GLuint ) = extension_funcs[EXT_glBindTransformFeedbackNV];
2515   TRACE("(%d, %d)\n", target, id );
2516   ENTER_GL();
2517   func_glBindTransformFeedbackNV( target, id );
2518   LEAVE_GL();
2519 }
2520
2521 static void WINAPI wine_glBindVertexArray( GLuint array ) {
2522   void (*func_glBindVertexArray)( GLuint ) = extension_funcs[EXT_glBindVertexArray];
2523   TRACE("(%d)\n", array );
2524   ENTER_GL();
2525   func_glBindVertexArray( array );
2526   LEAVE_GL();
2527 }
2528
2529 static void WINAPI wine_glBindVertexArrayAPPLE( GLuint array ) {
2530   void (*func_glBindVertexArrayAPPLE)( GLuint ) = extension_funcs[EXT_glBindVertexArrayAPPLE];
2531   TRACE("(%d)\n", array );
2532   ENTER_GL();
2533   func_glBindVertexArrayAPPLE( array );
2534   LEAVE_GL();
2535 }
2536
2537 static void WINAPI wine_glBindVertexShaderEXT( GLuint id ) {
2538   void (*func_glBindVertexShaderEXT)( GLuint ) = extension_funcs[EXT_glBindVertexShaderEXT];
2539   TRACE("(%d)\n", id );
2540   ENTER_GL();
2541   func_glBindVertexShaderEXT( id );
2542   LEAVE_GL();
2543 }
2544
2545 static void WINAPI wine_glBindVideoCaptureStreamBufferNV( GLuint video_capture_slot, GLuint stream, GLenum frame_region, INT_PTR offset ) {
2546   void (*func_glBindVideoCaptureStreamBufferNV)( GLuint, GLuint, GLenum, INT_PTR ) = extension_funcs[EXT_glBindVideoCaptureStreamBufferNV];
2547   TRACE("(%d, %d, %d, %ld)\n", video_capture_slot, stream, frame_region, offset );
2548   ENTER_GL();
2549   func_glBindVideoCaptureStreamBufferNV( video_capture_slot, stream, frame_region, offset );
2550   LEAVE_GL();
2551 }
2552
2553 static void WINAPI wine_glBindVideoCaptureStreamTextureNV( GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture ) {
2554   void (*func_glBindVideoCaptureStreamTextureNV)( GLuint, GLuint, GLenum, GLenum, GLuint ) = extension_funcs[EXT_glBindVideoCaptureStreamTextureNV];
2555   TRACE("(%d, %d, %d, %d, %d)\n", video_capture_slot, stream, frame_region, target, texture );
2556   ENTER_GL();
2557   func_glBindVideoCaptureStreamTextureNV( video_capture_slot, stream, frame_region, target, texture );
2558   LEAVE_GL();
2559 }
2560
2561 static void WINAPI wine_glBinormal3bEXT( GLbyte bx, GLbyte by, GLbyte bz ) {
2562   void (*func_glBinormal3bEXT)( GLbyte, GLbyte, GLbyte ) = extension_funcs[EXT_glBinormal3bEXT];
2563   TRACE("(%d, %d, %d)\n", bx, by, bz );
2564   ENTER_GL();
2565   func_glBinormal3bEXT( bx, by, bz );
2566   LEAVE_GL();
2567 }
2568
2569 static void WINAPI wine_glBinormal3bvEXT( GLbyte* v ) {
2570   void (*func_glBinormal3bvEXT)( GLbyte* ) = extension_funcs[EXT_glBinormal3bvEXT];
2571   TRACE("(%p)\n", v );
2572   ENTER_GL();
2573   func_glBinormal3bvEXT( v );
2574   LEAVE_GL();
2575 }
2576
2577 static void WINAPI wine_glBinormal3dEXT( GLdouble bx, GLdouble by, GLdouble bz ) {
2578   void (*func_glBinormal3dEXT)( GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glBinormal3dEXT];
2579   TRACE("(%f, %f, %f)\n", bx, by, bz );
2580   ENTER_GL();
2581   func_glBinormal3dEXT( bx, by, bz );
2582   LEAVE_GL();
2583 }
2584
2585 static void WINAPI wine_glBinormal3dvEXT( GLdouble* v ) {
2586   void (*func_glBinormal3dvEXT)( GLdouble* ) = extension_funcs[EXT_glBinormal3dvEXT];
2587   TRACE("(%p)\n", v );
2588   ENTER_GL();
2589   func_glBinormal3dvEXT( v );
2590   LEAVE_GL();
2591 }
2592
2593 static void WINAPI wine_glBinormal3fEXT( GLfloat bx, GLfloat by, GLfloat bz ) {
2594   void (*func_glBinormal3fEXT)( GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glBinormal3fEXT];
2595   TRACE("(%f, %f, %f)\n", bx, by, bz );
2596   ENTER_GL();
2597   func_glBinormal3fEXT( bx, by, bz );
2598   LEAVE_GL();
2599 }
2600
2601 static void WINAPI wine_glBinormal3fvEXT( GLfloat* v ) {
2602   void (*func_glBinormal3fvEXT)( GLfloat* ) = extension_funcs[EXT_glBinormal3fvEXT];
2603   TRACE("(%p)\n", v );
2604   ENTER_GL();
2605   func_glBinormal3fvEXT( v );
2606   LEAVE_GL();
2607 }
2608
2609 static void WINAPI wine_glBinormal3iEXT( GLint bx, GLint by, GLint bz ) {
2610   void (*func_glBinormal3iEXT)( GLint, GLint, GLint ) = extension_funcs[EXT_glBinormal3iEXT];
2611   TRACE("(%d, %d, %d)\n", bx, by, bz );
2612   ENTER_GL();
2613   func_glBinormal3iEXT( bx, by, bz );
2614   LEAVE_GL();
2615 }
2616
2617 static void WINAPI wine_glBinormal3ivEXT( GLint* v ) {
2618   void (*func_glBinormal3ivEXT)( GLint* ) = extension_funcs[EXT_glBinormal3ivEXT];
2619   TRACE("(%p)\n", v );
2620   ENTER_GL();
2621   func_glBinormal3ivEXT( v );
2622   LEAVE_GL();
2623 }
2624
2625 static void WINAPI wine_glBinormal3sEXT( GLshort bx, GLshort by, GLshort bz ) {
2626   void (*func_glBinormal3sEXT)( GLshort, GLshort, GLshort ) = extension_funcs[EXT_glBinormal3sEXT];
2627   TRACE("(%d, %d, %d)\n", bx, by, bz );
2628   ENTER_GL();
2629   func_glBinormal3sEXT( bx, by, bz );
2630   LEAVE_GL();
2631 }
2632
2633 static void WINAPI wine_glBinormal3svEXT( GLshort* v ) {
2634   void (*func_glBinormal3svEXT)( GLshort* ) = extension_funcs[EXT_glBinormal3svEXT];
2635   TRACE("(%p)\n", v );
2636   ENTER_GL();
2637   func_glBinormal3svEXT( v );
2638   LEAVE_GL();
2639 }
2640
2641 static void WINAPI wine_glBinormalPointerEXT( GLenum type, GLsizei stride, GLvoid* pointer ) {
2642   void (*func_glBinormalPointerEXT)( GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glBinormalPointerEXT];
2643   TRACE("(%d, %d, %p)\n", type, stride, pointer );
2644   ENTER_GL();
2645   func_glBinormalPointerEXT( type, stride, pointer );
2646   LEAVE_GL();
2647 }
2648
2649 static void WINAPI wine_glBlendColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) {
2650   void (*func_glBlendColor)( GLclampf, GLclampf, GLclampf, GLclampf ) = extension_funcs[EXT_glBlendColor];
2651   TRACE("(%f, %f, %f, %f)\n", red, green, blue, alpha );
2652   ENTER_GL();
2653   func_glBlendColor( red, green, blue, alpha );
2654   LEAVE_GL();
2655 }
2656
2657 static void WINAPI wine_glBlendColorEXT( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) {
2658   void (*func_glBlendColorEXT)( GLclampf, GLclampf, GLclampf, GLclampf ) = extension_funcs[EXT_glBlendColorEXT];
2659   TRACE("(%f, %f, %f, %f)\n", red, green, blue, alpha );
2660   ENTER_GL();
2661   func_glBlendColorEXT( red, green, blue, alpha );
2662   LEAVE_GL();
2663 }
2664
2665 static void WINAPI wine_glBlendEquation( GLenum mode ) {
2666   void (*func_glBlendEquation)( GLenum ) = extension_funcs[EXT_glBlendEquation];
2667   TRACE("(%d)\n", mode );
2668   ENTER_GL();
2669   func_glBlendEquation( mode );
2670   LEAVE_GL();
2671 }
2672
2673 static void WINAPI wine_glBlendEquationEXT( GLenum mode ) {
2674   void (*func_glBlendEquationEXT)( GLenum ) = extension_funcs[EXT_glBlendEquationEXT];
2675   TRACE("(%d)\n", mode );
2676   ENTER_GL();
2677   func_glBlendEquationEXT( mode );
2678   LEAVE_GL();
2679 }
2680
2681 static void WINAPI wine_glBlendEquationIndexedAMD( GLuint buf, GLenum mode ) {
2682   void (*func_glBlendEquationIndexedAMD)( GLuint, GLenum ) = extension_funcs[EXT_glBlendEquationIndexedAMD];
2683   TRACE("(%d, %d)\n", buf, mode );
2684   ENTER_GL();
2685   func_glBlendEquationIndexedAMD( buf, mode );
2686   LEAVE_GL();
2687 }
2688
2689 static void WINAPI wine_glBlendEquationSeparate( GLenum modeRGB, GLenum modeAlpha ) {
2690   void (*func_glBlendEquationSeparate)( GLenum, GLenum ) = extension_funcs[EXT_glBlendEquationSeparate];
2691   TRACE("(%d, %d)\n", modeRGB, modeAlpha );
2692   ENTER_GL();
2693   func_glBlendEquationSeparate( modeRGB, modeAlpha );
2694   LEAVE_GL();
2695 }
2696
2697 static void WINAPI wine_glBlendEquationSeparateEXT( GLenum modeRGB, GLenum modeAlpha ) {
2698   void (*func_glBlendEquationSeparateEXT)( GLenum, GLenum ) = extension_funcs[EXT_glBlendEquationSeparateEXT];
2699   TRACE("(%d, %d)\n", modeRGB, modeAlpha );
2700   ENTER_GL();
2701   func_glBlendEquationSeparateEXT( modeRGB, modeAlpha );
2702   LEAVE_GL();
2703 }
2704
2705 static void WINAPI wine_glBlendEquationSeparateIndexedAMD( GLuint buf, GLenum modeRGB, GLenum modeAlpha ) {
2706   void (*func_glBlendEquationSeparateIndexedAMD)( GLuint, GLenum, GLenum ) = extension_funcs[EXT_glBlendEquationSeparateIndexedAMD];
2707   TRACE("(%d, %d, %d)\n", buf, modeRGB, modeAlpha );
2708   ENTER_GL();
2709   func_glBlendEquationSeparateIndexedAMD( buf, modeRGB, modeAlpha );
2710   LEAVE_GL();
2711 }
2712
2713 static void WINAPI wine_glBlendEquationSeparatei( GLuint buf, GLenum modeRGB, GLenum modeAlpha ) {
2714   void (*func_glBlendEquationSeparatei)( GLuint, GLenum, GLenum ) = extension_funcs[EXT_glBlendEquationSeparatei];
2715   TRACE("(%d, %d, %d)\n", buf, modeRGB, modeAlpha );
2716   ENTER_GL();
2717   func_glBlendEquationSeparatei( buf, modeRGB, modeAlpha );
2718   LEAVE_GL();
2719 }
2720
2721 static void WINAPI wine_glBlendEquationSeparateiARB( GLuint buf, GLenum modeRGB, GLenum modeAlpha ) {
2722   void (*func_glBlendEquationSeparateiARB)( GLuint, GLenum, GLenum ) = extension_funcs[EXT_glBlendEquationSeparateiARB];
2723   TRACE("(%d, %d, %d)\n", buf, modeRGB, modeAlpha );
2724   ENTER_GL();
2725   func_glBlendEquationSeparateiARB( buf, modeRGB, modeAlpha );
2726   LEAVE_GL();
2727 }
2728
2729 static void WINAPI wine_glBlendEquationi( GLuint buf, GLenum mode ) {
2730   void (*func_glBlendEquationi)( GLuint, GLenum ) = extension_funcs[EXT_glBlendEquationi];
2731   TRACE("(%d, %d)\n", buf, mode );
2732   ENTER_GL();
2733   func_glBlendEquationi( buf, mode );
2734   LEAVE_GL();
2735 }
2736
2737 static void WINAPI wine_glBlendEquationiARB( GLuint buf, GLenum mode ) {
2738   void (*func_glBlendEquationiARB)( GLuint, GLenum ) = extension_funcs[EXT_glBlendEquationiARB];
2739   TRACE("(%d, %d)\n", buf, mode );
2740   ENTER_GL();
2741   func_glBlendEquationiARB( buf, mode );
2742   LEAVE_GL();
2743 }
2744
2745 static void WINAPI wine_glBlendFuncIndexedAMD( GLuint buf, GLenum src, GLenum dst ) {
2746   void (*func_glBlendFuncIndexedAMD)( GLuint, GLenum, GLenum ) = extension_funcs[EXT_glBlendFuncIndexedAMD];
2747   TRACE("(%d, %d, %d)\n", buf, src, dst );
2748   ENTER_GL();
2749   func_glBlendFuncIndexedAMD( buf, src, dst );
2750   LEAVE_GL();
2751 }
2752
2753 static void WINAPI wine_glBlendFuncSeparate( GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha ) {
2754   void (*func_glBlendFuncSeparate)( GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glBlendFuncSeparate];
2755   TRACE("(%d, %d, %d, %d)\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
2756   ENTER_GL();
2757   func_glBlendFuncSeparate( sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
2758   LEAVE_GL();
2759 }
2760
2761 static void WINAPI wine_glBlendFuncSeparateEXT( GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha ) {
2762   void (*func_glBlendFuncSeparateEXT)( GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glBlendFuncSeparateEXT];
2763   TRACE("(%d, %d, %d, %d)\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
2764   ENTER_GL();
2765   func_glBlendFuncSeparateEXT( sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
2766   LEAVE_GL();
2767 }
2768
2769 static void WINAPI wine_glBlendFuncSeparateINGR( GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha ) {
2770   void (*func_glBlendFuncSeparateINGR)( GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glBlendFuncSeparateINGR];
2771   TRACE("(%d, %d, %d, %d)\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
2772   ENTER_GL();
2773   func_glBlendFuncSeparateINGR( sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
2774   LEAVE_GL();
2775 }
2776
2777 static void WINAPI wine_glBlendFuncSeparateIndexedAMD( GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) {
2778   void (*func_glBlendFuncSeparateIndexedAMD)( GLuint, GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glBlendFuncSeparateIndexedAMD];
2779   TRACE("(%d, %d, %d, %d, %d)\n", buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
2780   ENTER_GL();
2781   func_glBlendFuncSeparateIndexedAMD( buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
2782   LEAVE_GL();
2783 }
2784
2785 static void WINAPI wine_glBlendFuncSeparatei( GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) {
2786   void (*func_glBlendFuncSeparatei)( GLuint, GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glBlendFuncSeparatei];
2787   TRACE("(%d, %d, %d, %d, %d)\n", buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
2788   ENTER_GL();
2789   func_glBlendFuncSeparatei( buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
2790   LEAVE_GL();
2791 }
2792
2793 static void WINAPI wine_glBlendFuncSeparateiARB( GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) {
2794   void (*func_glBlendFuncSeparateiARB)( GLuint, GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glBlendFuncSeparateiARB];
2795   TRACE("(%d, %d, %d, %d, %d)\n", buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
2796   ENTER_GL();
2797   func_glBlendFuncSeparateiARB( buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
2798   LEAVE_GL();
2799 }
2800
2801 static void WINAPI wine_glBlendFunci( GLuint buf, GLenum src, GLenum dst ) {
2802   void (*func_glBlendFunci)( GLuint, GLenum, GLenum ) = extension_funcs[EXT_glBlendFunci];
2803   TRACE("(%d, %d, %d)\n", buf, src, dst );
2804   ENTER_GL();
2805   func_glBlendFunci( buf, src, dst );
2806   LEAVE_GL();
2807 }
2808
2809 static void WINAPI wine_glBlendFunciARB( GLuint buf, GLenum src, GLenum dst ) {
2810   void (*func_glBlendFunciARB)( GLuint, GLenum, GLenum ) = extension_funcs[EXT_glBlendFunciARB];
2811   TRACE("(%d, %d, %d)\n", buf, src, dst );
2812   ENTER_GL();
2813   func_glBlendFunciARB( buf, src, dst );
2814   LEAVE_GL();
2815 }
2816
2817 static void WINAPI wine_glBlitFramebuffer( GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter ) {
2818   void (*func_glBlitFramebuffer)( GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum ) = extension_funcs[EXT_glBlitFramebuffer];
2819   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
2820   ENTER_GL();
2821   func_glBlitFramebuffer( srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
2822   LEAVE_GL();
2823 }
2824
2825 static void WINAPI wine_glBlitFramebufferEXT( GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter ) {
2826   void (*func_glBlitFramebufferEXT)( GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum ) = extension_funcs[EXT_glBlitFramebufferEXT];
2827   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
2828   ENTER_GL();
2829   func_glBlitFramebufferEXT( srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
2830   LEAVE_GL();
2831 }
2832
2833 static void WINAPI wine_glBufferAddressRangeNV( GLenum pname, GLuint index, UINT64 address, INT_PTR length ) {
2834   void (*func_glBufferAddressRangeNV)( GLenum, GLuint, UINT64, INT_PTR ) = extension_funcs[EXT_glBufferAddressRangeNV];
2835   TRACE("(%d, %d, %s, %ld)\n", pname, index, wine_dbgstr_longlong(address), length );
2836   ENTER_GL();
2837   func_glBufferAddressRangeNV( pname, index, address, length );
2838   LEAVE_GL();
2839 }
2840
2841 static void WINAPI wine_glBufferData( GLenum target, INT_PTR size, GLvoid* data, GLenum usage ) {
2842   void (*func_glBufferData)( GLenum, INT_PTR, GLvoid*, GLenum ) = extension_funcs[EXT_glBufferData];
2843   TRACE("(%d, %ld, %p, %d)\n", target, size, data, usage );
2844   ENTER_GL();
2845   func_glBufferData( target, size, data, usage );
2846   LEAVE_GL();
2847 }
2848
2849 static void WINAPI wine_glBufferDataARB( GLenum target, INT_PTR size, GLvoid* data, GLenum usage ) {
2850   void (*func_glBufferDataARB)( GLenum, INT_PTR, GLvoid*, GLenum ) = extension_funcs[EXT_glBufferDataARB];
2851   TRACE("(%d, %ld, %p, %d)\n", target, size, data, usage );
2852   ENTER_GL();
2853   func_glBufferDataARB( target, size, data, usage );
2854   LEAVE_GL();
2855 }
2856
2857 static void WINAPI wine_glBufferParameteriAPPLE( GLenum target, GLenum pname, GLint param ) {
2858   void (*func_glBufferParameteriAPPLE)( GLenum, GLenum, GLint ) = extension_funcs[EXT_glBufferParameteriAPPLE];
2859   TRACE("(%d, %d, %d)\n", target, pname, param );
2860   ENTER_GL();
2861   func_glBufferParameteriAPPLE( target, pname, param );
2862   LEAVE_GL();
2863 }
2864
2865 static GLuint WINAPI wine_glBufferRegionEnabled( void ) {
2866   GLuint ret_value;
2867   GLuint (*func_glBufferRegionEnabled)( void ) = extension_funcs[EXT_glBufferRegionEnabled];
2868   TRACE("()\n");
2869   ENTER_GL();
2870   ret_value = func_glBufferRegionEnabled( );
2871   LEAVE_GL();
2872   return ret_value;
2873 }
2874
2875 static void WINAPI wine_glBufferSubData( GLenum target, INT_PTR offset, INT_PTR size, GLvoid* data ) {
2876   void (*func_glBufferSubData)( GLenum, INT_PTR, INT_PTR, GLvoid* ) = extension_funcs[EXT_glBufferSubData];
2877   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
2878   ENTER_GL();
2879   func_glBufferSubData( target, offset, size, data );
2880   LEAVE_GL();
2881 }
2882
2883 static void WINAPI wine_glBufferSubDataARB( GLenum target, INT_PTR offset, INT_PTR size, GLvoid* data ) {
2884   void (*func_glBufferSubDataARB)( GLenum, INT_PTR, INT_PTR, GLvoid* ) = extension_funcs[EXT_glBufferSubDataARB];
2885   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
2886   ENTER_GL();
2887   func_glBufferSubDataARB( target, offset, size, data );
2888   LEAVE_GL();
2889 }
2890
2891 static GLenum WINAPI wine_glCheckFramebufferStatus( GLenum target ) {
2892   GLenum ret_value;
2893   GLenum (*func_glCheckFramebufferStatus)( GLenum ) = extension_funcs[EXT_glCheckFramebufferStatus];
2894   TRACE("(%d)\n", target );
2895   ENTER_GL();
2896   ret_value = func_glCheckFramebufferStatus( target );
2897   LEAVE_GL();
2898   return ret_value;
2899 }
2900
2901 static GLenum WINAPI wine_glCheckFramebufferStatusEXT( GLenum target ) {
2902   GLenum ret_value;
2903   GLenum (*func_glCheckFramebufferStatusEXT)( GLenum ) = extension_funcs[EXT_glCheckFramebufferStatusEXT];
2904   TRACE("(%d)\n", target );
2905   ENTER_GL();
2906   ret_value = func_glCheckFramebufferStatusEXT( target );
2907   LEAVE_GL();
2908   return ret_value;
2909 }
2910
2911 static GLenum WINAPI wine_glCheckNamedFramebufferStatusEXT( GLuint framebuffer, GLenum target ) {
2912   GLenum ret_value;
2913   GLenum (*func_glCheckNamedFramebufferStatusEXT)( GLuint, GLenum ) = extension_funcs[EXT_glCheckNamedFramebufferStatusEXT];
2914   TRACE("(%d, %d)\n", framebuffer, target );
2915   ENTER_GL();
2916   ret_value = func_glCheckNamedFramebufferStatusEXT( framebuffer, target );
2917   LEAVE_GL();
2918   return ret_value;
2919 }
2920
2921 static void WINAPI wine_glClampColor( GLenum target, GLenum clamp ) {
2922   void (*func_glClampColor)( GLenum, GLenum ) = extension_funcs[EXT_glClampColor];
2923   TRACE("(%d, %d)\n", target, clamp );
2924   ENTER_GL();
2925   func_glClampColor( target, clamp );
2926   LEAVE_GL();
2927 }
2928
2929 static void WINAPI wine_glClampColorARB( GLenum target, GLenum clamp ) {
2930   void (*func_glClampColorARB)( GLenum, GLenum ) = extension_funcs[EXT_glClampColorARB];
2931   TRACE("(%d, %d)\n", target, clamp );
2932   ENTER_GL();
2933   func_glClampColorARB( target, clamp );
2934   LEAVE_GL();
2935 }
2936
2937 static void WINAPI wine_glClearBufferfi( GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil ) {
2938   void (*func_glClearBufferfi)( GLenum, GLint, GLfloat, GLint ) = extension_funcs[EXT_glClearBufferfi];
2939   TRACE("(%d, %d, %f, %d)\n", buffer, drawbuffer, depth, stencil );
2940   ENTER_GL();
2941   func_glClearBufferfi( buffer, drawbuffer, depth, stencil );
2942   LEAVE_GL();
2943 }
2944
2945 static void WINAPI wine_glClearBufferfv( GLenum buffer, GLint drawbuffer, GLfloat* value ) {
2946   void (*func_glClearBufferfv)( GLenum, GLint, GLfloat* ) = extension_funcs[EXT_glClearBufferfv];
2947   TRACE("(%d, %d, %p)\n", buffer, drawbuffer, value );
2948   ENTER_GL();
2949   func_glClearBufferfv( buffer, drawbuffer, value );
2950   LEAVE_GL();
2951 }
2952
2953 static void WINAPI wine_glClearBufferiv( GLenum buffer, GLint drawbuffer, GLint* value ) {
2954   void (*func_glClearBufferiv)( GLenum, GLint, GLint* ) = extension_funcs[EXT_glClearBufferiv];
2955   TRACE("(%d, %d, %p)\n", buffer, drawbuffer, value );
2956   ENTER_GL();
2957   func_glClearBufferiv( buffer, drawbuffer, value );
2958   LEAVE_GL();
2959 }
2960
2961 static void WINAPI wine_glClearBufferuiv( GLenum buffer, GLint drawbuffer, GLuint* value ) {
2962   void (*func_glClearBufferuiv)( GLenum, GLint, GLuint* ) = extension_funcs[EXT_glClearBufferuiv];
2963   TRACE("(%d, %d, %p)\n", buffer, drawbuffer, value );
2964   ENTER_GL();
2965   func_glClearBufferuiv( buffer, drawbuffer, value );
2966   LEAVE_GL();
2967 }
2968
2969 static void WINAPI wine_glClearColorIiEXT( GLint red, GLint green, GLint blue, GLint alpha ) {
2970   void (*func_glClearColorIiEXT)( GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glClearColorIiEXT];
2971   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
2972   ENTER_GL();
2973   func_glClearColorIiEXT( red, green, blue, alpha );
2974   LEAVE_GL();
2975 }
2976
2977 static void WINAPI wine_glClearColorIuiEXT( GLuint red, GLuint green, GLuint blue, GLuint alpha ) {
2978   void (*func_glClearColorIuiEXT)( GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glClearColorIuiEXT];
2979   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
2980   ENTER_GL();
2981   func_glClearColorIuiEXT( red, green, blue, alpha );
2982   LEAVE_GL();
2983 }
2984
2985 static void WINAPI wine_glClearDepthdNV( GLdouble depth ) {
2986   void (*func_glClearDepthdNV)( GLdouble ) = extension_funcs[EXT_glClearDepthdNV];
2987   TRACE("(%f)\n", depth );
2988   ENTER_GL();
2989   func_glClearDepthdNV( depth );
2990   LEAVE_GL();
2991 }
2992
2993 static void WINAPI wine_glClearDepthf( GLclampf d ) {
2994   void (*func_glClearDepthf)( GLclampf ) = extension_funcs[EXT_glClearDepthf];
2995   TRACE("(%f)\n", d );
2996   ENTER_GL();
2997   func_glClearDepthf( d );
2998   LEAVE_GL();
2999 }
3000
3001 static void WINAPI wine_glClientActiveTexture( GLenum texture ) {
3002   void (*func_glClientActiveTexture)( GLenum ) = extension_funcs[EXT_glClientActiveTexture];
3003   TRACE("(%d)\n", texture );
3004   ENTER_GL();
3005   func_glClientActiveTexture( texture );
3006   LEAVE_GL();
3007 }
3008
3009 static void WINAPI wine_glClientActiveTextureARB( GLenum texture ) {
3010   void (*func_glClientActiveTextureARB)( GLenum ) = extension_funcs[EXT_glClientActiveTextureARB];
3011   TRACE("(%d)\n", texture );
3012   ENTER_GL();
3013   func_glClientActiveTextureARB( texture );
3014   LEAVE_GL();
3015 }
3016
3017 static void WINAPI wine_glClientActiveVertexStreamATI( GLenum stream ) {
3018   void (*func_glClientActiveVertexStreamATI)( GLenum ) = extension_funcs[EXT_glClientActiveVertexStreamATI];
3019   TRACE("(%d)\n", stream );
3020   ENTER_GL();
3021   func_glClientActiveVertexStreamATI( stream );
3022   LEAVE_GL();
3023 }
3024
3025 static void WINAPI wine_glClientAttribDefaultEXT( GLbitfield mask ) {
3026   void (*func_glClientAttribDefaultEXT)( GLbitfield ) = extension_funcs[EXT_glClientAttribDefaultEXT];
3027   TRACE("(%d)\n", mask );
3028   ENTER_GL();
3029   func_glClientAttribDefaultEXT( mask );
3030   LEAVE_GL();
3031 }
3032
3033 static GLenum WINAPI wine_glClientWaitSync( GLvoid* sync, GLbitfield flags, UINT64 timeout ) {
3034   GLenum ret_value;
3035   GLenum (*func_glClientWaitSync)( GLvoid*, GLbitfield, UINT64 ) = extension_funcs[EXT_glClientWaitSync];
3036   TRACE("(%p, %d, %s)\n", sync, flags, wine_dbgstr_longlong(timeout) );
3037   ENTER_GL();
3038   ret_value = func_glClientWaitSync( sync, flags, timeout );
3039   LEAVE_GL();
3040   return ret_value;
3041 }
3042
3043 static void WINAPI wine_glColor3fVertex3fSUN( GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z ) {
3044   void (*func_glColor3fVertex3fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glColor3fVertex3fSUN];
3045   TRACE("(%f, %f, %f, %f, %f, %f)\n", r, g, b, x, y, z );
3046   ENTER_GL();
3047   func_glColor3fVertex3fSUN( r, g, b, x, y, z );
3048   LEAVE_GL();
3049 }
3050
3051 static void WINAPI wine_glColor3fVertex3fvSUN( GLfloat* c, GLfloat* v ) {
3052   void (*func_glColor3fVertex3fvSUN)( GLfloat*, GLfloat* ) = extension_funcs[EXT_glColor3fVertex3fvSUN];
3053   TRACE("(%p, %p)\n", c, v );
3054   ENTER_GL();
3055   func_glColor3fVertex3fvSUN( c, v );
3056   LEAVE_GL();
3057 }
3058
3059 static void WINAPI wine_glColor3hNV( unsigned short red, unsigned short green, unsigned short blue ) {
3060   void (*func_glColor3hNV)( unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glColor3hNV];
3061   TRACE("(%d, %d, %d)\n", red, green, blue );
3062   ENTER_GL();
3063   func_glColor3hNV( red, green, blue );
3064   LEAVE_GL();
3065 }
3066
3067 static void WINAPI wine_glColor3hvNV( unsigned short* v ) {
3068   void (*func_glColor3hvNV)( unsigned short* ) = extension_funcs[EXT_glColor3hvNV];
3069   TRACE("(%p)\n", v );
3070   ENTER_GL();
3071   func_glColor3hvNV( v );
3072   LEAVE_GL();
3073 }
3074
3075 static void WINAPI wine_glColor4fNormal3fVertex3fSUN( GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
3076   void (*func_glColor4fNormal3fVertex3fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glColor4fNormal3fVertex3fSUN];
3077   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f, %f, %f)\n", r, g, b, a, nx, ny, nz, x, y, z );
3078   ENTER_GL();
3079   func_glColor4fNormal3fVertex3fSUN( r, g, b, a, nx, ny, nz, x, y, z );
3080   LEAVE_GL();
3081 }
3082
3083 static void WINAPI wine_glColor4fNormal3fVertex3fvSUN( GLfloat* c, GLfloat* n, GLfloat* v ) {
3084   void (*func_glColor4fNormal3fVertex3fvSUN)( GLfloat*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glColor4fNormal3fVertex3fvSUN];
3085   TRACE("(%p, %p, %p)\n", c, n, v );
3086   ENTER_GL();
3087   func_glColor4fNormal3fVertex3fvSUN( c, n, v );
3088   LEAVE_GL();
3089 }
3090
3091 static void WINAPI wine_glColor4hNV( unsigned short red, unsigned short green, unsigned short blue, unsigned short alpha ) {
3092   void (*func_glColor4hNV)( unsigned short, unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glColor4hNV];
3093   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
3094   ENTER_GL();
3095   func_glColor4hNV( red, green, blue, alpha );
3096   LEAVE_GL();
3097 }
3098
3099 static void WINAPI wine_glColor4hvNV( unsigned short* v ) {
3100   void (*func_glColor4hvNV)( unsigned short* ) = extension_funcs[EXT_glColor4hvNV];
3101   TRACE("(%p)\n", v );
3102   ENTER_GL();
3103   func_glColor4hvNV( v );
3104   LEAVE_GL();
3105 }
3106
3107 static void WINAPI wine_glColor4ubVertex2fSUN( GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y ) {
3108   void (*func_glColor4ubVertex2fSUN)( GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat ) = extension_funcs[EXT_glColor4ubVertex2fSUN];
3109   TRACE("(%d, %d, %d, %d, %f, %f)\n", r, g, b, a, x, y );
3110   ENTER_GL();
3111   func_glColor4ubVertex2fSUN( r, g, b, a, x, y );
3112   LEAVE_GL();
3113 }
3114
3115 static void WINAPI wine_glColor4ubVertex2fvSUN( GLubyte* c, GLfloat* v ) {
3116   void (*func_glColor4ubVertex2fvSUN)( GLubyte*, GLfloat* ) = extension_funcs[EXT_glColor4ubVertex2fvSUN];
3117   TRACE("(%p, %p)\n", c, v );
3118   ENTER_GL();
3119   func_glColor4ubVertex2fvSUN( c, v );
3120   LEAVE_GL();
3121 }
3122
3123 static void WINAPI wine_glColor4ubVertex3fSUN( GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z ) {
3124   void (*func_glColor4ubVertex3fSUN)( GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glColor4ubVertex3fSUN];
3125   TRACE("(%d, %d, %d, %d, %f, %f, %f)\n", r, g, b, a, x, y, z );
3126   ENTER_GL();
3127   func_glColor4ubVertex3fSUN( r, g, b, a, x, y, z );
3128   LEAVE_GL();
3129 }
3130
3131 static void WINAPI wine_glColor4ubVertex3fvSUN( GLubyte* c, GLfloat* v ) {
3132   void (*func_glColor4ubVertex3fvSUN)( GLubyte*, GLfloat* ) = extension_funcs[EXT_glColor4ubVertex3fvSUN];
3133   TRACE("(%p, %p)\n", c, v );
3134   ENTER_GL();
3135   func_glColor4ubVertex3fvSUN( c, v );
3136   LEAVE_GL();
3137 }
3138
3139 static void WINAPI wine_glColorFormatNV( GLint size, GLenum type, GLsizei stride ) {
3140   void (*func_glColorFormatNV)( GLint, GLenum, GLsizei ) = extension_funcs[EXT_glColorFormatNV];
3141   TRACE("(%d, %d, %d)\n", size, type, stride );
3142   ENTER_GL();
3143   func_glColorFormatNV( size, type, stride );
3144   LEAVE_GL();
3145 }
3146
3147 static void WINAPI wine_glColorFragmentOp1ATI( GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod ) {
3148   void (*func_glColorFragmentOp1ATI)( GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glColorFragmentOp1ATI];
3149   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod );
3150   ENTER_GL();
3151   func_glColorFragmentOp1ATI( op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod );
3152   LEAVE_GL();
3153 }
3154
3155 static void WINAPI wine_glColorFragmentOp2ATI( GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod ) {
3156   void (*func_glColorFragmentOp2ATI)( GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glColorFragmentOp2ATI];
3157   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod );
3158   ENTER_GL();
3159   func_glColorFragmentOp2ATI( op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod );
3160   LEAVE_GL();
3161 }
3162
3163 static void WINAPI wine_glColorFragmentOp3ATI( GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod ) {
3164   void (*func_glColorFragmentOp3ATI)( GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glColorFragmentOp3ATI];
3165   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod );
3166   ENTER_GL();
3167   func_glColorFragmentOp3ATI( op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod );
3168   LEAVE_GL();
3169 }
3170
3171 static void WINAPI wine_glColorMaskIndexedEXT( GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a ) {
3172   void (*func_glColorMaskIndexedEXT)( GLuint, GLboolean, GLboolean, GLboolean, GLboolean ) = extension_funcs[EXT_glColorMaskIndexedEXT];
3173   TRACE("(%d, %d, %d, %d, %d)\n", index, r, g, b, a );
3174   ENTER_GL();
3175   func_glColorMaskIndexedEXT( index, r, g, b, a );
3176   LEAVE_GL();
3177 }
3178
3179 static void WINAPI wine_glColorMaski( GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a ) {
3180   void (*func_glColorMaski)( GLuint, GLboolean, GLboolean, GLboolean, GLboolean ) = extension_funcs[EXT_glColorMaski];
3181   TRACE("(%d, %d, %d, %d, %d)\n", index, r, g, b, a );
3182   ENTER_GL();
3183   func_glColorMaski( index, r, g, b, a );
3184   LEAVE_GL();
3185 }
3186
3187 static void WINAPI wine_glColorP3ui( GLenum type, GLuint color ) {
3188   void (*func_glColorP3ui)( GLenum, GLuint ) = extension_funcs[EXT_glColorP3ui];
3189   TRACE("(%d, %d)\n", type, color );
3190   ENTER_GL();
3191   func_glColorP3ui( type, color );
3192   LEAVE_GL();
3193 }
3194
3195 static void WINAPI wine_glColorP3uiv( GLenum type, GLuint* color ) {
3196   void (*func_glColorP3uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glColorP3uiv];
3197   TRACE("(%d, %p)\n", type, color );
3198   ENTER_GL();
3199   func_glColorP3uiv( type, color );
3200   LEAVE_GL();
3201 }
3202
3203 static void WINAPI wine_glColorP4ui( GLenum type, GLuint color ) {
3204   void (*func_glColorP4ui)( GLenum, GLuint ) = extension_funcs[EXT_glColorP4ui];
3205   TRACE("(%d, %d)\n", type, color );
3206   ENTER_GL();
3207   func_glColorP4ui( type, color );
3208   LEAVE_GL();
3209 }
3210
3211 static void WINAPI wine_glColorP4uiv( GLenum type, GLuint* color ) {
3212   void (*func_glColorP4uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glColorP4uiv];
3213   TRACE("(%d, %p)\n", type, color );
3214   ENTER_GL();
3215   func_glColorP4uiv( type, color );
3216   LEAVE_GL();
3217 }
3218
3219 static void WINAPI wine_glColorPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, GLvoid* pointer ) {
3220   void (*func_glColorPointerEXT)( GLint, GLenum, GLsizei, GLsizei, GLvoid* ) = extension_funcs[EXT_glColorPointerEXT];
3221   TRACE("(%d, %d, %d, %d, %p)\n", size, type, stride, count, pointer );
3222   ENTER_GL();
3223   func_glColorPointerEXT( size, type, stride, count, pointer );
3224   LEAVE_GL();
3225 }
3226
3227 static void WINAPI wine_glColorPointerListIBM( GLint size, GLenum type, GLint stride, GLvoid** pointer, GLint ptrstride ) {
3228   void (*func_glColorPointerListIBM)( GLint, GLenum, GLint, GLvoid**, GLint ) = extension_funcs[EXT_glColorPointerListIBM];
3229   TRACE("(%d, %d, %d, %p, %d)\n", size, type, stride, pointer, ptrstride );
3230   ENTER_GL();
3231   func_glColorPointerListIBM( size, type, stride, pointer, ptrstride );
3232   LEAVE_GL();
3233 }
3234
3235 static void WINAPI wine_glColorPointervINTEL( GLint size, GLenum type, GLvoid** pointer ) {
3236   void (*func_glColorPointervINTEL)( GLint, GLenum, GLvoid** ) = extension_funcs[EXT_glColorPointervINTEL];
3237   TRACE("(%d, %d, %p)\n", size, type, pointer );
3238   ENTER_GL();
3239   func_glColorPointervINTEL( size, type, pointer );
3240   LEAVE_GL();
3241 }
3242
3243 static void WINAPI wine_glColorSubTable( GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, GLvoid* data ) {
3244   void (*func_glColorSubTable)( GLenum, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glColorSubTable];
3245   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, start, count, format, type, data );
3246   ENTER_GL();
3247   func_glColorSubTable( target, start, count, format, type, data );
3248   LEAVE_GL();
3249 }
3250
3251 static void WINAPI wine_glColorSubTableEXT( GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, GLvoid* data ) {
3252   void (*func_glColorSubTableEXT)( GLenum, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glColorSubTableEXT];
3253   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, start, count, format, type, data );
3254   ENTER_GL();
3255   func_glColorSubTableEXT( target, start, count, format, type, data );
3256   LEAVE_GL();
3257 }
3258
3259 static void WINAPI wine_glColorTable( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, GLvoid* table ) {
3260   void (*func_glColorTable)( GLenum, GLenum, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glColorTable];
3261   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, table );
3262   ENTER_GL();
3263   func_glColorTable( target, internalformat, width, format, type, table );
3264   LEAVE_GL();
3265 }
3266
3267 static void WINAPI wine_glColorTableEXT( GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, GLvoid* table ) {
3268   void (*func_glColorTableEXT)( GLenum, GLenum, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glColorTableEXT];
3269   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalFormat, width, format, type, table );
3270   ENTER_GL();
3271   func_glColorTableEXT( target, internalFormat, width, format, type, table );
3272   LEAVE_GL();
3273 }
3274
3275 static void WINAPI wine_glColorTableParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
3276   void (*func_glColorTableParameterfv)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glColorTableParameterfv];
3277   TRACE("(%d, %d, %p)\n", target, pname, params );
3278   ENTER_GL();
3279   func_glColorTableParameterfv( target, pname, params );
3280   LEAVE_GL();
3281 }
3282
3283 static void WINAPI wine_glColorTableParameterfvSGI( GLenum target, GLenum pname, GLfloat* params ) {
3284   void (*func_glColorTableParameterfvSGI)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glColorTableParameterfvSGI];
3285   TRACE("(%d, %d, %p)\n", target, pname, params );
3286   ENTER_GL();
3287   func_glColorTableParameterfvSGI( target, pname, params );
3288   LEAVE_GL();
3289 }
3290
3291 static void WINAPI wine_glColorTableParameteriv( GLenum target, GLenum pname, GLint* params ) {
3292   void (*func_glColorTableParameteriv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glColorTableParameteriv];
3293   TRACE("(%d, %d, %p)\n", target, pname, params );
3294   ENTER_GL();
3295   func_glColorTableParameteriv( target, pname, params );
3296   LEAVE_GL();
3297 }
3298
3299 static void WINAPI wine_glColorTableParameterivSGI( GLenum target, GLenum pname, GLint* params ) {
3300   void (*func_glColorTableParameterivSGI)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glColorTableParameterivSGI];
3301   TRACE("(%d, %d, %p)\n", target, pname, params );
3302   ENTER_GL();
3303   func_glColorTableParameterivSGI( target, pname, params );
3304   LEAVE_GL();
3305 }
3306
3307 static void WINAPI wine_glColorTableSGI( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, GLvoid* table ) {
3308   void (*func_glColorTableSGI)( GLenum, GLenum, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glColorTableSGI];
3309   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, table );
3310   ENTER_GL();
3311   func_glColorTableSGI( target, internalformat, width, format, type, table );
3312   LEAVE_GL();
3313 }
3314
3315 static void WINAPI wine_glCombinerInputNV( GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage ) {
3316   void (*func_glCombinerInputNV)( GLenum, GLenum, GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glCombinerInputNV];
3317   TRACE("(%d, %d, %d, %d, %d, %d)\n", stage, portion, variable, input, mapping, componentUsage );
3318   ENTER_GL();
3319   func_glCombinerInputNV( stage, portion, variable, input, mapping, componentUsage );
3320   LEAVE_GL();
3321 }
3322
3323 static void WINAPI wine_glCombinerOutputNV( GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum ) {
3324   void (*func_glCombinerOutputNV)( GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLboolean, GLboolean, GLboolean ) = extension_funcs[EXT_glCombinerOutputNV];
3325   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum );
3326   ENTER_GL();
3327   func_glCombinerOutputNV( stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum );
3328   LEAVE_GL();
3329 }
3330
3331 static void WINAPI wine_glCombinerParameterfNV( GLenum pname, GLfloat param ) {
3332   void (*func_glCombinerParameterfNV)( GLenum, GLfloat ) = extension_funcs[EXT_glCombinerParameterfNV];
3333   TRACE("(%d, %f)\n", pname, param );
3334   ENTER_GL();
3335   func_glCombinerParameterfNV( pname, param );
3336   LEAVE_GL();
3337 }
3338
3339 static void WINAPI wine_glCombinerParameterfvNV( GLenum pname, GLfloat* params ) {
3340   void (*func_glCombinerParameterfvNV)( GLenum, GLfloat* ) = extension_funcs[EXT_glCombinerParameterfvNV];
3341   TRACE("(%d, %p)\n", pname, params );
3342   ENTER_GL();
3343   func_glCombinerParameterfvNV( pname, params );
3344   LEAVE_GL();
3345 }
3346
3347 static void WINAPI wine_glCombinerParameteriNV( GLenum pname, GLint param ) {
3348   void (*func_glCombinerParameteriNV)( GLenum, GLint ) = extension_funcs[EXT_glCombinerParameteriNV];
3349   TRACE("(%d, %d)\n", pname, param );
3350   ENTER_GL();
3351   func_glCombinerParameteriNV( pname, param );
3352   LEAVE_GL();
3353 }
3354
3355 static void WINAPI wine_glCombinerParameterivNV( GLenum pname, GLint* params ) {
3356   void (*func_glCombinerParameterivNV)( GLenum, GLint* ) = extension_funcs[EXT_glCombinerParameterivNV];
3357   TRACE("(%d, %p)\n", pname, params );
3358   ENTER_GL();
3359   func_glCombinerParameterivNV( pname, params );
3360   LEAVE_GL();
3361 }
3362
3363 static void WINAPI wine_glCombinerStageParameterfvNV( GLenum stage, GLenum pname, GLfloat* params ) {
3364   void (*func_glCombinerStageParameterfvNV)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glCombinerStageParameterfvNV];
3365   TRACE("(%d, %d, %p)\n", stage, pname, params );
3366   ENTER_GL();
3367   func_glCombinerStageParameterfvNV( stage, pname, params );
3368   LEAVE_GL();
3369 }
3370
3371 static void WINAPI wine_glCompileShader( GLuint shader ) {
3372   void (*func_glCompileShader)( GLuint ) = extension_funcs[EXT_glCompileShader];
3373   TRACE("(%d)\n", shader );
3374   ENTER_GL();
3375   func_glCompileShader( shader );
3376   LEAVE_GL();
3377 }
3378
3379 static void WINAPI wine_glCompileShaderARB( unsigned int shaderObj ) {
3380   void (*func_glCompileShaderARB)( unsigned int ) = extension_funcs[EXT_glCompileShaderARB];
3381   TRACE("(%d)\n", shaderObj );
3382   ENTER_GL();
3383   func_glCompileShaderARB( shaderObj );
3384   LEAVE_GL();
3385 }
3386
3387 static void WINAPI wine_glCompileShaderIncludeARB( GLuint shader, GLsizei count, char** path, GLint* length ) {
3388   void (*func_glCompileShaderIncludeARB)( GLuint, GLsizei, char**, GLint* ) = extension_funcs[EXT_glCompileShaderIncludeARB];
3389   TRACE("(%d, %d, %p, %p)\n", shader, count, path, length );
3390   ENTER_GL();
3391   func_glCompileShaderIncludeARB( shader, count, path, length );
3392   LEAVE_GL();
3393 }
3394
3395 static void WINAPI wine_glCompressedMultiTexImage1DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, GLvoid* bits ) {
3396   void (*func_glCompressedMultiTexImage1DEXT)( GLenum, GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedMultiTexImage1DEXT];
3397   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, border, imageSize, bits );
3398   ENTER_GL();
3399   func_glCompressedMultiTexImage1DEXT( texunit, target, level, internalformat, width, border, imageSize, bits );
3400   LEAVE_GL();
3401 }
3402
3403 static void WINAPI wine_glCompressedMultiTexImage2DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLvoid* bits ) {
3404   void (*func_glCompressedMultiTexImage2DEXT)( GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedMultiTexImage2DEXT];
3405   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, height, border, imageSize, bits );
3406   ENTER_GL();
3407   func_glCompressedMultiTexImage2DEXT( texunit, target, level, internalformat, width, height, border, imageSize, bits );
3408   LEAVE_GL();
3409 }
3410
3411 static void WINAPI wine_glCompressedMultiTexImage3DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLvoid* bits ) {
3412   void (*func_glCompressedMultiTexImage3DEXT)( GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedMultiTexImage3DEXT];
3413   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, height, depth, border, imageSize, bits );
3414   ENTER_GL();
3415   func_glCompressedMultiTexImage3DEXT( texunit, target, level, internalformat, width, height, depth, border, imageSize, bits );
3416   LEAVE_GL();
3417 }
3418
3419 static void WINAPI wine_glCompressedMultiTexSubImage1DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, GLvoid* bits ) {
3420   void (*func_glCompressedMultiTexSubImage1DEXT)( GLenum, GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedMultiTexSubImage1DEXT];
3421   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, width, format, imageSize, bits );
3422   ENTER_GL();
3423   func_glCompressedMultiTexSubImage1DEXT( texunit, target, level, xoffset, width, format, imageSize, bits );
3424   LEAVE_GL();
3425 }
3426
3427 static void WINAPI wine_glCompressedMultiTexSubImage2DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLvoid* bits ) {
3428   void (*func_glCompressedMultiTexSubImage2DEXT)( GLenum, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedMultiTexSubImage2DEXT];
3429   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits );
3430   ENTER_GL();
3431   func_glCompressedMultiTexSubImage2DEXT( texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits );
3432   LEAVE_GL();
3433 }
3434
3435 static void WINAPI wine_glCompressedMultiTexSubImage3DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, GLvoid* bits ) {
3436   void (*func_glCompressedMultiTexSubImage3DEXT)( GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedMultiTexSubImage3DEXT];
3437   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits );
3438   ENTER_GL();
3439   func_glCompressedMultiTexSubImage3DEXT( texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits );
3440   LEAVE_GL();
3441 }
3442
3443 static void WINAPI wine_glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, GLvoid* data ) {
3444   void (*func_glCompressedTexImage1D)( GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexImage1D];
3445   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, border, imageSize, data );
3446   ENTER_GL();
3447   func_glCompressedTexImage1D( target, level, internalformat, width, border, imageSize, data );
3448   LEAVE_GL();
3449 }
3450
3451 static void WINAPI wine_glCompressedTexImage1DARB( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, GLvoid* data ) {
3452   void (*func_glCompressedTexImage1DARB)( GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexImage1DARB];
3453   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, border, imageSize, data );
3454   ENTER_GL();
3455   func_glCompressedTexImage1DARB( target, level, internalformat, width, border, imageSize, data );
3456   LEAVE_GL();
3457 }
3458
3459 static void WINAPI wine_glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLvoid* data ) {
3460   void (*func_glCompressedTexImage2D)( GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexImage2D];
3461   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, border, imageSize, data );
3462   ENTER_GL();
3463   func_glCompressedTexImage2D( target, level, internalformat, width, height, border, imageSize, data );
3464   LEAVE_GL();
3465 }
3466
3467 static void WINAPI wine_glCompressedTexImage2DARB( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLvoid* data ) {
3468   void (*func_glCompressedTexImage2DARB)( GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexImage2DARB];
3469   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, border, imageSize, data );
3470   ENTER_GL();
3471   func_glCompressedTexImage2DARB( target, level, internalformat, width, height, border, imageSize, data );
3472   LEAVE_GL();
3473 }
3474
3475 static void WINAPI wine_glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLvoid* data ) {
3476   void (*func_glCompressedTexImage3D)( GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexImage3D];
3477   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, border, imageSize, data );
3478   ENTER_GL();
3479   func_glCompressedTexImage3D( target, level, internalformat, width, height, depth, border, imageSize, data );
3480   LEAVE_GL();
3481 }
3482
3483 static void WINAPI wine_glCompressedTexImage3DARB( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLvoid* data ) {
3484   void (*func_glCompressedTexImage3DARB)( GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexImage3DARB];
3485   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, border, imageSize, data );
3486   ENTER_GL();
3487   func_glCompressedTexImage3DARB( target, level, internalformat, width, height, depth, border, imageSize, data );
3488   LEAVE_GL();
3489 }
3490
3491 static void WINAPI wine_glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, GLvoid* data ) {
3492   void (*func_glCompressedTexSubImage1D)( GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexSubImage1D];
3493   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, width, format, imageSize, data );
3494   ENTER_GL();
3495   func_glCompressedTexSubImage1D( target, level, xoffset, width, format, imageSize, data );
3496   LEAVE_GL();
3497 }
3498
3499 static void WINAPI wine_glCompressedTexSubImage1DARB( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, GLvoid* data ) {
3500   void (*func_glCompressedTexSubImage1DARB)( GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexSubImage1DARB];
3501   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, width, format, imageSize, data );
3502   ENTER_GL();
3503   func_glCompressedTexSubImage1DARB( target, level, xoffset, width, format, imageSize, data );
3504   LEAVE_GL();
3505 }
3506
3507 static void WINAPI wine_glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLvoid* data ) {
3508   void (*func_glCompressedTexSubImage2D)( GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexSubImage2D];
3509   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, width, height, format, imageSize, data );
3510   ENTER_GL();
3511   func_glCompressedTexSubImage2D( target, level, xoffset, yoffset, width, height, format, imageSize, data );
3512   LEAVE_GL();
3513 }
3514
3515 static void WINAPI wine_glCompressedTexSubImage2DARB( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLvoid* data ) {
3516   void (*func_glCompressedTexSubImage2DARB)( GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexSubImage2DARB];
3517   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, width, height, format, imageSize, data );
3518   ENTER_GL();
3519   func_glCompressedTexSubImage2DARB( target, level, xoffset, yoffset, width, height, format, imageSize, data );
3520   LEAVE_GL();
3521 }
3522
3523 static void WINAPI wine_glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, GLvoid* data ) {
3524   void (*func_glCompressedTexSubImage3D)( GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexSubImage3D];
3525   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
3526   ENTER_GL();
3527   func_glCompressedTexSubImage3D( target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
3528   LEAVE_GL();
3529 }
3530
3531 static void WINAPI wine_glCompressedTexSubImage3DARB( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, GLvoid* data ) {
3532   void (*func_glCompressedTexSubImage3DARB)( GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTexSubImage3DARB];
3533   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
3534   ENTER_GL();
3535   func_glCompressedTexSubImage3DARB( target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
3536   LEAVE_GL();
3537 }
3538
3539 static void WINAPI wine_glCompressedTextureImage1DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, GLvoid* bits ) {
3540   void (*func_glCompressedTextureImage1DEXT)( GLuint, GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTextureImage1DEXT];
3541   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, border, imageSize, bits );
3542   ENTER_GL();
3543   func_glCompressedTextureImage1DEXT( texture, target, level, internalformat, width, border, imageSize, bits );
3544   LEAVE_GL();
3545 }
3546
3547 static void WINAPI wine_glCompressedTextureImage2DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLvoid* bits ) {
3548   void (*func_glCompressedTextureImage2DEXT)( GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTextureImage2DEXT];
3549   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, height, border, imageSize, bits );
3550   ENTER_GL();
3551   func_glCompressedTextureImage2DEXT( texture, target, level, internalformat, width, height, border, imageSize, bits );
3552   LEAVE_GL();
3553 }
3554
3555 static void WINAPI wine_glCompressedTextureImage3DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLvoid* bits ) {
3556   void (*func_glCompressedTextureImage3DEXT)( GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTextureImage3DEXT];
3557   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, height, depth, border, imageSize, bits );
3558   ENTER_GL();
3559   func_glCompressedTextureImage3DEXT( texture, target, level, internalformat, width, height, depth, border, imageSize, bits );
3560   LEAVE_GL();
3561 }
3562
3563 static void WINAPI wine_glCompressedTextureSubImage1DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, GLvoid* bits ) {
3564   void (*func_glCompressedTextureSubImage1DEXT)( GLuint, GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTextureSubImage1DEXT];
3565   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, width, format, imageSize, bits );
3566   ENTER_GL();
3567   func_glCompressedTextureSubImage1DEXT( texture, target, level, xoffset, width, format, imageSize, bits );
3568   LEAVE_GL();
3569 }
3570
3571 static void WINAPI wine_glCompressedTextureSubImage2DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLvoid* bits ) {
3572   void (*func_glCompressedTextureSubImage2DEXT)( GLuint, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTextureSubImage2DEXT];
3573   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits );
3574   ENTER_GL();
3575   func_glCompressedTextureSubImage2DEXT( texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits );
3576   LEAVE_GL();
3577 }
3578
3579 static void WINAPI wine_glCompressedTextureSubImage3DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, GLvoid* bits ) {
3580   void (*func_glCompressedTextureSubImage3DEXT)( GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glCompressedTextureSubImage3DEXT];
3581   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits );
3582   ENTER_GL();
3583   func_glCompressedTextureSubImage3DEXT( texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits );
3584   LEAVE_GL();
3585 }
3586
3587 static void WINAPI wine_glConvolutionFilter1D( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, GLvoid* image ) {
3588   void (*func_glConvolutionFilter1D)( GLenum, GLenum, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glConvolutionFilter1D];
3589   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, image );
3590   ENTER_GL();
3591   func_glConvolutionFilter1D( target, internalformat, width, format, type, image );
3592   LEAVE_GL();
3593 }
3594
3595 static void WINAPI wine_glConvolutionFilter1DEXT( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, GLvoid* image ) {
3596   void (*func_glConvolutionFilter1DEXT)( GLenum, GLenum, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glConvolutionFilter1DEXT];
3597   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, image );
3598   ENTER_GL();
3599   func_glConvolutionFilter1DEXT( target, internalformat, width, format, type, image );
3600   LEAVE_GL();
3601 }
3602
3603 static void WINAPI wine_glConvolutionFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* image ) {
3604   void (*func_glConvolutionFilter2D)( GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glConvolutionFilter2D];
3605   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, internalformat, width, height, format, type, image );
3606   ENTER_GL();
3607   func_glConvolutionFilter2D( target, internalformat, width, height, format, type, image );
3608   LEAVE_GL();
3609 }
3610
3611 static void WINAPI wine_glConvolutionFilter2DEXT( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* image ) {
3612   void (*func_glConvolutionFilter2DEXT)( GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glConvolutionFilter2DEXT];
3613   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, internalformat, width, height, format, type, image );
3614   ENTER_GL();
3615   func_glConvolutionFilter2DEXT( target, internalformat, width, height, format, type, image );
3616   LEAVE_GL();
3617 }
3618
3619 static void WINAPI wine_glConvolutionParameterf( GLenum target, GLenum pname, GLfloat params ) {
3620   void (*func_glConvolutionParameterf)( GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glConvolutionParameterf];
3621   TRACE("(%d, %d, %f)\n", target, pname, params );
3622   ENTER_GL();
3623   func_glConvolutionParameterf( target, pname, params );
3624   LEAVE_GL();
3625 }
3626
3627 static void WINAPI wine_glConvolutionParameterfEXT( GLenum target, GLenum pname, GLfloat params ) {
3628   void (*func_glConvolutionParameterfEXT)( GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glConvolutionParameterfEXT];
3629   TRACE("(%d, %d, %f)\n", target, pname, params );
3630   ENTER_GL();
3631   func_glConvolutionParameterfEXT( target, pname, params );
3632   LEAVE_GL();
3633 }
3634
3635 static void WINAPI wine_glConvolutionParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
3636   void (*func_glConvolutionParameterfv)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glConvolutionParameterfv];
3637   TRACE("(%d, %d, %p)\n", target, pname, params );
3638   ENTER_GL();
3639   func_glConvolutionParameterfv( target, pname, params );
3640   LEAVE_GL();
3641 }
3642
3643 static void WINAPI wine_glConvolutionParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
3644   void (*func_glConvolutionParameterfvEXT)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glConvolutionParameterfvEXT];
3645   TRACE("(%d, %d, %p)\n", target, pname, params );
3646   ENTER_GL();
3647   func_glConvolutionParameterfvEXT( target, pname, params );
3648   LEAVE_GL();
3649 }
3650
3651 static void WINAPI wine_glConvolutionParameteri( GLenum target, GLenum pname, GLint params ) {
3652   void (*func_glConvolutionParameteri)( GLenum, GLenum, GLint ) = extension_funcs[EXT_glConvolutionParameteri];
3653   TRACE("(%d, %d, %d)\n", target, pname, params );
3654   ENTER_GL();
3655   func_glConvolutionParameteri( target, pname, params );
3656   LEAVE_GL();
3657 }
3658
3659 static void WINAPI wine_glConvolutionParameteriEXT( GLenum target, GLenum pname, GLint params ) {
3660   void (*func_glConvolutionParameteriEXT)( GLenum, GLenum, GLint ) = extension_funcs[EXT_glConvolutionParameteriEXT];
3661   TRACE("(%d, %d, %d)\n", target, pname, params );
3662   ENTER_GL();
3663   func_glConvolutionParameteriEXT( target, pname, params );
3664   LEAVE_GL();
3665 }
3666
3667 static void WINAPI wine_glConvolutionParameteriv( GLenum target, GLenum pname, GLint* params ) {
3668   void (*func_glConvolutionParameteriv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glConvolutionParameteriv];
3669   TRACE("(%d, %d, %p)\n", target, pname, params );
3670   ENTER_GL();
3671   func_glConvolutionParameteriv( target, pname, params );
3672   LEAVE_GL();
3673 }
3674
3675 static void WINAPI wine_glConvolutionParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
3676   void (*func_glConvolutionParameterivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glConvolutionParameterivEXT];
3677   TRACE("(%d, %d, %p)\n", target, pname, params );
3678   ENTER_GL();
3679   func_glConvolutionParameterivEXT( target, pname, params );
3680   LEAVE_GL();
3681 }
3682
3683 static void WINAPI wine_glCopyBufferSubData( GLenum readTarget, GLenum writeTarget, INT_PTR readOffset, INT_PTR writeOffset, INT_PTR size ) {
3684   void (*func_glCopyBufferSubData)( GLenum, GLenum, INT_PTR, INT_PTR, INT_PTR ) = extension_funcs[EXT_glCopyBufferSubData];
3685   TRACE("(%d, %d, %ld, %ld, %ld)\n", readTarget, writeTarget, readOffset, writeOffset, size );
3686   ENTER_GL();
3687   func_glCopyBufferSubData( readTarget, writeTarget, readOffset, writeOffset, size );
3688   LEAVE_GL();
3689 }
3690
3691 static void WINAPI wine_glCopyColorSubTable( GLenum target, GLsizei start, GLint x, GLint y, GLsizei width ) {
3692   void (*func_glCopyColorSubTable)( GLenum, GLsizei, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyColorSubTable];
3693   TRACE("(%d, %d, %d, %d, %d)\n", target, start, x, y, width );
3694   ENTER_GL();
3695   func_glCopyColorSubTable( target, start, x, y, width );
3696   LEAVE_GL();
3697 }
3698
3699 static void WINAPI wine_glCopyColorSubTableEXT( GLenum target, GLsizei start, GLint x, GLint y, GLsizei width ) {
3700   void (*func_glCopyColorSubTableEXT)( GLenum, GLsizei, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyColorSubTableEXT];
3701   TRACE("(%d, %d, %d, %d, %d)\n", target, start, x, y, width );
3702   ENTER_GL();
3703   func_glCopyColorSubTableEXT( target, start, x, y, width );
3704   LEAVE_GL();
3705 }
3706
3707 static void WINAPI wine_glCopyColorTable( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
3708   void (*func_glCopyColorTable)( GLenum, GLenum, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyColorTable];
3709   TRACE("(%d, %d, %d, %d, %d)\n", target, internalformat, x, y, width );
3710   ENTER_GL();
3711   func_glCopyColorTable( target, internalformat, x, y, width );
3712   LEAVE_GL();
3713 }
3714
3715 static void WINAPI wine_glCopyColorTableSGI( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
3716   void (*func_glCopyColorTableSGI)( GLenum, GLenum, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyColorTableSGI];
3717   TRACE("(%d, %d, %d, %d, %d)\n", target, internalformat, x, y, width );
3718   ENTER_GL();
3719   func_glCopyColorTableSGI( target, internalformat, x, y, width );
3720   LEAVE_GL();
3721 }
3722
3723 static void WINAPI wine_glCopyConvolutionFilter1D( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
3724   void (*func_glCopyConvolutionFilter1D)( GLenum, GLenum, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyConvolutionFilter1D];
3725   TRACE("(%d, %d, %d, %d, %d)\n", target, internalformat, x, y, width );
3726   ENTER_GL();
3727   func_glCopyConvolutionFilter1D( target, internalformat, x, y, width );
3728   LEAVE_GL();
3729 }
3730
3731 static void WINAPI wine_glCopyConvolutionFilter1DEXT( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
3732   void (*func_glCopyConvolutionFilter1DEXT)( GLenum, GLenum, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyConvolutionFilter1DEXT];
3733   TRACE("(%d, %d, %d, %d, %d)\n", target, internalformat, x, y, width );
3734   ENTER_GL();
3735   func_glCopyConvolutionFilter1DEXT( target, internalformat, x, y, width );
3736   LEAVE_GL();
3737 }
3738
3739 static void WINAPI wine_glCopyConvolutionFilter2D( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height ) {
3740   void (*func_glCopyConvolutionFilter2D)( GLenum, GLenum, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyConvolutionFilter2D];
3741   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, internalformat, x, y, width, height );
3742   ENTER_GL();
3743   func_glCopyConvolutionFilter2D( target, internalformat, x, y, width, height );
3744   LEAVE_GL();
3745 }
3746
3747 static void WINAPI wine_glCopyConvolutionFilter2DEXT( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height ) {
3748   void (*func_glCopyConvolutionFilter2DEXT)( GLenum, GLenum, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyConvolutionFilter2DEXT];
3749   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, internalformat, x, y, width, height );
3750   ENTER_GL();
3751   func_glCopyConvolutionFilter2DEXT( target, internalformat, x, y, width, height );
3752   LEAVE_GL();
3753 }
3754
3755 static void WINAPI wine_glCopyImageSubDataNV( GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth ) {
3756   void (*func_glCopyImageSubDataNV)( GLuint, GLenum, GLint, GLint, GLint, GLint, GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyImageSubDataNV];
3757   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth );
3758   ENTER_GL();
3759   func_glCopyImageSubDataNV( srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth );
3760   LEAVE_GL();
3761 }
3762
3763 static void WINAPI wine_glCopyMultiTexImage1DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) {
3764   void (*func_glCopyMultiTexImage1DEXT)( GLenum, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint ) = extension_funcs[EXT_glCopyMultiTexImage1DEXT];
3765   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, internalformat, x, y, width, border );
3766   ENTER_GL();
3767   func_glCopyMultiTexImage1DEXT( texunit, target, level, internalformat, x, y, width, border );
3768   LEAVE_GL();
3769 }
3770
3771 static void WINAPI wine_glCopyMultiTexImage2DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) {
3772   void (*func_glCopyMultiTexImage2DEXT)( GLenum, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint ) = extension_funcs[EXT_glCopyMultiTexImage2DEXT];
3773   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, internalformat, x, y, width, height, border );
3774   ENTER_GL();
3775   func_glCopyMultiTexImage2DEXT( texunit, target, level, internalformat, x, y, width, height, border );
3776   LEAVE_GL();
3777 }
3778
3779 static void WINAPI wine_glCopyMultiTexSubImage1DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) {
3780   void (*func_glCopyMultiTexSubImage1DEXT)( GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyMultiTexSubImage1DEXT];
3781   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, xoffset, x, y, width );
3782   ENTER_GL();
3783   func_glCopyMultiTexSubImage1DEXT( texunit, target, level, xoffset, x, y, width );
3784   LEAVE_GL();
3785 }
3786
3787 static void WINAPI wine_glCopyMultiTexSubImage2DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
3788   void (*func_glCopyMultiTexSubImage2DEXT)( GLenum, GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyMultiTexSubImage2DEXT];
3789   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, xoffset, yoffset, x, y, width, height );
3790   ENTER_GL();
3791   func_glCopyMultiTexSubImage2DEXT( texunit, target, level, xoffset, yoffset, x, y, width, height );
3792   LEAVE_GL();
3793 }
3794
3795 static void WINAPI wine_glCopyMultiTexSubImage3DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
3796   void (*func_glCopyMultiTexSubImage3DEXT)( GLenum, GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyMultiTexSubImage3DEXT];
3797   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height );
3798   ENTER_GL();
3799   func_glCopyMultiTexSubImage3DEXT( texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height );
3800   LEAVE_GL();
3801 }
3802
3803 static void WINAPI wine_glCopyTexImage1DEXT( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) {
3804   void (*func_glCopyTexImage1DEXT)( GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint ) = extension_funcs[EXT_glCopyTexImage1DEXT];
3805   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", target, level, internalformat, x, y, width, border );
3806   ENTER_GL();
3807   func_glCopyTexImage1DEXT( target, level, internalformat, x, y, width, border );
3808   LEAVE_GL();
3809 }
3810
3811 static void WINAPI wine_glCopyTexImage2DEXT( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) {
3812   void (*func_glCopyTexImage2DEXT)( GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint ) = extension_funcs[EXT_glCopyTexImage2DEXT];
3813   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, internalformat, x, y, width, height, border );
3814   ENTER_GL();
3815   func_glCopyTexImage2DEXT( target, level, internalformat, x, y, width, height, border );
3816   LEAVE_GL();
3817 }
3818
3819 static void WINAPI wine_glCopyTexSubImage1DEXT( GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) {
3820   void (*func_glCopyTexSubImage1DEXT)( GLenum, GLint, GLint, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyTexSubImage1DEXT];
3821   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, level, xoffset, x, y, width );
3822   ENTER_GL();
3823   func_glCopyTexSubImage1DEXT( target, level, xoffset, x, y, width );
3824   LEAVE_GL();
3825 }
3826
3827 static void WINAPI wine_glCopyTexSubImage2DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
3828   void (*func_glCopyTexSubImage2DEXT)( GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyTexSubImage2DEXT];
3829   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, xoffset, yoffset, x, y, width, height );
3830   ENTER_GL();
3831   func_glCopyTexSubImage2DEXT( target, level, xoffset, yoffset, x, y, width, height );
3832   LEAVE_GL();
3833 }
3834
3835 static void WINAPI wine_glCopyTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
3836   void (*func_glCopyTexSubImage3D)( GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyTexSubImage3D];
3837   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, xoffset, yoffset, zoffset, x, y, width, height );
3838   ENTER_GL();
3839   func_glCopyTexSubImage3D( target, level, xoffset, yoffset, zoffset, x, y, width, height );
3840   LEAVE_GL();
3841 }
3842
3843 static void WINAPI wine_glCopyTexSubImage3DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
3844   void (*func_glCopyTexSubImage3DEXT)( GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyTexSubImage3DEXT];
3845   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, xoffset, yoffset, zoffset, x, y, width, height );
3846   ENTER_GL();
3847   func_glCopyTexSubImage3DEXT( target, level, xoffset, yoffset, zoffset, x, y, width, height );
3848   LEAVE_GL();
3849 }
3850
3851 static void WINAPI wine_glCopyTextureImage1DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) {
3852   void (*func_glCopyTextureImage1DEXT)( GLuint, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint ) = extension_funcs[EXT_glCopyTextureImage1DEXT];
3853   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, internalformat, x, y, width, border );
3854   ENTER_GL();
3855   func_glCopyTextureImage1DEXT( texture, target, level, internalformat, x, y, width, border );
3856   LEAVE_GL();
3857 }
3858
3859 static void WINAPI wine_glCopyTextureImage2DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) {
3860   void (*func_glCopyTextureImage2DEXT)( GLuint, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint ) = extension_funcs[EXT_glCopyTextureImage2DEXT];
3861   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, internalformat, x, y, width, height, border );
3862   ENTER_GL();
3863   func_glCopyTextureImage2DEXT( texture, target, level, internalformat, x, y, width, height, border );
3864   LEAVE_GL();
3865 }
3866
3867 static void WINAPI wine_glCopyTextureSubImage1DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) {
3868   void (*func_glCopyTextureSubImage1DEXT)( GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei ) = extension_funcs[EXT_glCopyTextureSubImage1DEXT];
3869   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, xoffset, x, y, width );
3870   ENTER_GL();
3871   func_glCopyTextureSubImage1DEXT( texture, target, level, xoffset, x, y, width );
3872   LEAVE_GL();
3873 }
3874
3875 static void WINAPI wine_glCopyTextureSubImage2DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
3876   void (*func_glCopyTextureSubImage2DEXT)( GLuint, GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyTextureSubImage2DEXT];
3877   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, xoffset, yoffset, x, y, width, height );
3878   ENTER_GL();
3879   func_glCopyTextureSubImage2DEXT( texture, target, level, xoffset, yoffset, x, y, width, height );
3880   LEAVE_GL();
3881 }
3882
3883 static void WINAPI wine_glCopyTextureSubImage3DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
3884   void (*func_glCopyTextureSubImage3DEXT)( GLuint, GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glCopyTextureSubImage3DEXT];
3885   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, xoffset, yoffset, zoffset, x, y, width, height );
3886   ENTER_GL();
3887   func_glCopyTextureSubImage3DEXT( texture, target, level, xoffset, yoffset, zoffset, x, y, width, height );
3888   LEAVE_GL();
3889 }
3890
3891 static GLuint WINAPI wine_glCreateProgram( void ) {
3892   GLuint ret_value;
3893   GLuint (*func_glCreateProgram)( void ) = extension_funcs[EXT_glCreateProgram];
3894   TRACE("()\n");
3895   ENTER_GL();
3896   ret_value = func_glCreateProgram( );
3897   LEAVE_GL();
3898   return ret_value;
3899 }
3900
3901 static unsigned int WINAPI wine_glCreateProgramObjectARB( void ) {
3902   unsigned int ret_value;
3903   unsigned int (*func_glCreateProgramObjectARB)( void ) = extension_funcs[EXT_glCreateProgramObjectARB];
3904   TRACE("()\n");
3905   ENTER_GL();
3906   ret_value = func_glCreateProgramObjectARB( );
3907   LEAVE_GL();
3908   return ret_value;
3909 }
3910
3911 static GLuint WINAPI wine_glCreateShader( GLenum type ) {
3912   GLuint ret_value;
3913   GLuint (*func_glCreateShader)( GLenum ) = extension_funcs[EXT_glCreateShader];
3914   TRACE("(%d)\n", type );
3915   ENTER_GL();
3916   ret_value = func_glCreateShader( type );
3917   LEAVE_GL();
3918   return ret_value;
3919 }
3920
3921 static unsigned int WINAPI wine_glCreateShaderObjectARB( GLenum shaderType ) {
3922   unsigned int ret_value;
3923   unsigned int (*func_glCreateShaderObjectARB)( GLenum ) = extension_funcs[EXT_glCreateShaderObjectARB];
3924   TRACE("(%d)\n", shaderType );
3925   ENTER_GL();
3926   ret_value = func_glCreateShaderObjectARB( shaderType );
3927   LEAVE_GL();
3928   return ret_value;
3929 }
3930
3931 static GLuint WINAPI wine_glCreateShaderProgramEXT( GLenum type, char* string ) {
3932   GLuint ret_value;
3933   GLuint (*func_glCreateShaderProgramEXT)( GLenum, char* ) = extension_funcs[EXT_glCreateShaderProgramEXT];
3934   TRACE("(%d, %p)\n", type, string );
3935   ENTER_GL();
3936   ret_value = func_glCreateShaderProgramEXT( type, string );
3937   LEAVE_GL();
3938   return ret_value;
3939 }
3940
3941 static GLuint WINAPI wine_glCreateShaderProgramv( GLenum type, GLsizei count, char** strings ) {
3942   GLuint ret_value;
3943   GLuint (*func_glCreateShaderProgramv)( GLenum, GLsizei, char** ) = extension_funcs[EXT_glCreateShaderProgramv];
3944   TRACE("(%d, %d, %p)\n", type, count, strings );
3945   ENTER_GL();
3946   ret_value = func_glCreateShaderProgramv( type, count, strings );
3947   LEAVE_GL();
3948   return ret_value;
3949 }
3950
3951 static GLvoid* WINAPI wine_glCreateSyncFromCLeventARB( void * context, void * event, GLbitfield flags ) {
3952   GLvoid* ret_value;
3953   GLvoid* (*func_glCreateSyncFromCLeventARB)( void *, void *, GLbitfield ) = extension_funcs[EXT_glCreateSyncFromCLeventARB];
3954   TRACE("(%p, %p, %d)\n", context, event, flags );
3955   ENTER_GL();
3956   ret_value = func_glCreateSyncFromCLeventARB( context, event, flags );
3957   LEAVE_GL();
3958   return ret_value;
3959 }
3960
3961 static void WINAPI wine_glCullParameterdvEXT( GLenum pname, GLdouble* params ) {
3962   void (*func_glCullParameterdvEXT)( GLenum, GLdouble* ) = extension_funcs[EXT_glCullParameterdvEXT];
3963   TRACE("(%d, %p)\n", pname, params );
3964   ENTER_GL();
3965   func_glCullParameterdvEXT( pname, params );
3966   LEAVE_GL();
3967 }
3968
3969 static void WINAPI wine_glCullParameterfvEXT( GLenum pname, GLfloat* params ) {
3970   void (*func_glCullParameterfvEXT)( GLenum, GLfloat* ) = extension_funcs[EXT_glCullParameterfvEXT];
3971   TRACE("(%d, %p)\n", pname, params );
3972   ENTER_GL();
3973   func_glCullParameterfvEXT( pname, params );
3974   LEAVE_GL();
3975 }
3976
3977 static void WINAPI wine_glCurrentPaletteMatrixARB( GLint index ) {
3978   void (*func_glCurrentPaletteMatrixARB)( GLint ) = extension_funcs[EXT_glCurrentPaletteMatrixARB];
3979   TRACE("(%d)\n", index );
3980   ENTER_GL();
3981   func_glCurrentPaletteMatrixARB( index );
3982   LEAVE_GL();
3983 }
3984
3985 static void WINAPI wine_glDebugMessageCallbackAMD( void * callback, GLvoid* userParam ) {
3986   void (*func_glDebugMessageCallbackAMD)( void *, GLvoid* ) = extension_funcs[EXT_glDebugMessageCallbackAMD];
3987   TRACE("(%p, %p)\n", callback, userParam );
3988   ENTER_GL();
3989   func_glDebugMessageCallbackAMD( callback, userParam );
3990   LEAVE_GL();
3991 }
3992
3993 static void WINAPI wine_glDebugMessageCallbackARB( void * callback, GLvoid* userParam ) {
3994   void (*func_glDebugMessageCallbackARB)( void *, GLvoid* ) = extension_funcs[EXT_glDebugMessageCallbackARB];
3995   TRACE("(%p, %p)\n", callback, userParam );
3996   ENTER_GL();
3997   func_glDebugMessageCallbackARB( callback, userParam );
3998   LEAVE_GL();
3999 }
4000
4001 static void WINAPI wine_glDebugMessageControlARB( GLenum source, GLenum type, GLenum severity, GLsizei count, GLuint* ids, GLboolean enabled ) {
4002   void (*func_glDebugMessageControlARB)( GLenum, GLenum, GLenum, GLsizei, GLuint*, GLboolean ) = extension_funcs[EXT_glDebugMessageControlARB];
4003   TRACE("(%d, %d, %d, %d, %p, %d)\n", source, type, severity, count, ids, enabled );
4004   ENTER_GL();
4005   func_glDebugMessageControlARB( source, type, severity, count, ids, enabled );
4006   LEAVE_GL();
4007 }
4008
4009 static void WINAPI wine_glDebugMessageEnableAMD( GLenum category, GLenum severity, GLsizei count, GLuint* ids, GLboolean enabled ) {
4010   void (*func_glDebugMessageEnableAMD)( GLenum, GLenum, GLsizei, GLuint*, GLboolean ) = extension_funcs[EXT_glDebugMessageEnableAMD];
4011   TRACE("(%d, %d, %d, %p, %d)\n", category, severity, count, ids, enabled );
4012   ENTER_GL();
4013   func_glDebugMessageEnableAMD( category, severity, count, ids, enabled );
4014   LEAVE_GL();
4015 }
4016
4017 static void WINAPI wine_glDebugMessageInsertAMD( GLenum category, GLenum severity, GLuint id, GLsizei length, char* buf ) {
4018   void (*func_glDebugMessageInsertAMD)( GLenum, GLenum, GLuint, GLsizei, char* ) = extension_funcs[EXT_glDebugMessageInsertAMD];
4019   TRACE("(%d, %d, %d, %d, %p)\n", category, severity, id, length, buf );
4020   ENTER_GL();
4021   func_glDebugMessageInsertAMD( category, severity, id, length, buf );
4022   LEAVE_GL();
4023 }
4024
4025 static void WINAPI wine_glDebugMessageInsertARB( GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, char* buf ) {
4026   void (*func_glDebugMessageInsertARB)( GLenum, GLenum, GLuint, GLenum, GLsizei, char* ) = extension_funcs[EXT_glDebugMessageInsertARB];
4027   TRACE("(%d, %d, %d, %d, %d, %p)\n", source, type, id, severity, length, buf );
4028   ENTER_GL();
4029   func_glDebugMessageInsertARB( source, type, id, severity, length, buf );
4030   LEAVE_GL();
4031 }
4032
4033 static void WINAPI wine_glDeformSGIX( GLbitfield mask ) {
4034   void (*func_glDeformSGIX)( GLbitfield ) = extension_funcs[EXT_glDeformSGIX];
4035   TRACE("(%d)\n", mask );
4036   ENTER_GL();
4037   func_glDeformSGIX( mask );
4038   LEAVE_GL();
4039 }
4040
4041 static void WINAPI wine_glDeformationMap3dSGIX( GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, GLdouble w1, GLdouble w2, GLint wstride, GLint worder, GLdouble* points ) {
4042   void (*func_glDeformationMap3dSGIX)( GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, GLdouble* ) = extension_funcs[EXT_glDeformationMap3dSGIX];
4043   TRACE("(%d, %f, %f, %d, %d, %f, %f, %d, %d, %f, %f, %d, %d, %p)\n", target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points );
4044   ENTER_GL();
4045   func_glDeformationMap3dSGIX( target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points );
4046   LEAVE_GL();
4047 }
4048
4049 static void WINAPI wine_glDeformationMap3fSGIX( GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, GLfloat w1, GLfloat w2, GLint wstride, GLint worder, GLfloat* points ) {
4050   void (*func_glDeformationMap3fSGIX)( GLenum, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, GLfloat* ) = extension_funcs[EXT_glDeformationMap3fSGIX];
4051   TRACE("(%d, %f, %f, %d, %d, %f, %f, %d, %d, %f, %f, %d, %d, %p)\n", target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points );
4052   ENTER_GL();
4053   func_glDeformationMap3fSGIX( target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points );
4054   LEAVE_GL();
4055 }
4056
4057 static void WINAPI wine_glDeleteAsyncMarkersSGIX( GLuint marker, GLsizei range ) {
4058   void (*func_glDeleteAsyncMarkersSGIX)( GLuint, GLsizei ) = extension_funcs[EXT_glDeleteAsyncMarkersSGIX];
4059   TRACE("(%d, %d)\n", marker, range );
4060   ENTER_GL();
4061   func_glDeleteAsyncMarkersSGIX( marker, range );
4062   LEAVE_GL();
4063 }
4064
4065 static void WINAPI wine_glDeleteBufferRegion( GLenum region ) {
4066   void (*func_glDeleteBufferRegion)( GLenum ) = extension_funcs[EXT_glDeleteBufferRegion];
4067   TRACE("(%d)\n", region );
4068   ENTER_GL();
4069   func_glDeleteBufferRegion( region );
4070   LEAVE_GL();
4071 }
4072
4073 static void WINAPI wine_glDeleteBuffers( GLsizei n, GLuint* buffers ) {
4074   void (*func_glDeleteBuffers)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteBuffers];
4075   TRACE("(%d, %p)\n", n, buffers );
4076   ENTER_GL();
4077   func_glDeleteBuffers( n, buffers );
4078   LEAVE_GL();
4079 }
4080
4081 static void WINAPI wine_glDeleteBuffersARB( GLsizei n, GLuint* buffers ) {
4082   void (*func_glDeleteBuffersARB)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteBuffersARB];
4083   TRACE("(%d, %p)\n", n, buffers );
4084   ENTER_GL();
4085   func_glDeleteBuffersARB( n, buffers );
4086   LEAVE_GL();
4087 }
4088
4089 static void WINAPI wine_glDeleteFencesAPPLE( GLsizei n, GLuint* fences ) {
4090   void (*func_glDeleteFencesAPPLE)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteFencesAPPLE];
4091   TRACE("(%d, %p)\n", n, fences );
4092   ENTER_GL();
4093   func_glDeleteFencesAPPLE( n, fences );
4094   LEAVE_GL();
4095 }
4096
4097 static void WINAPI wine_glDeleteFencesNV( GLsizei n, GLuint* fences ) {
4098   void (*func_glDeleteFencesNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteFencesNV];
4099   TRACE("(%d, %p)\n", n, fences );
4100   ENTER_GL();
4101   func_glDeleteFencesNV( n, fences );
4102   LEAVE_GL();
4103 }
4104
4105 static void WINAPI wine_glDeleteFragmentShaderATI( GLuint id ) {
4106   void (*func_glDeleteFragmentShaderATI)( GLuint ) = extension_funcs[EXT_glDeleteFragmentShaderATI];
4107   TRACE("(%d)\n", id );
4108   ENTER_GL();
4109   func_glDeleteFragmentShaderATI( id );
4110   LEAVE_GL();
4111 }
4112
4113 static void WINAPI wine_glDeleteFramebuffers( GLsizei n, GLuint* framebuffers ) {
4114   void (*func_glDeleteFramebuffers)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteFramebuffers];
4115   TRACE("(%d, %p)\n", n, framebuffers );
4116   ENTER_GL();
4117   func_glDeleteFramebuffers( n, framebuffers );
4118   LEAVE_GL();
4119 }
4120
4121 static void WINAPI wine_glDeleteFramebuffersEXT( GLsizei n, GLuint* framebuffers ) {
4122   void (*func_glDeleteFramebuffersEXT)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteFramebuffersEXT];
4123   TRACE("(%d, %p)\n", n, framebuffers );
4124   ENTER_GL();
4125   func_glDeleteFramebuffersEXT( n, framebuffers );
4126   LEAVE_GL();
4127 }
4128
4129 static void WINAPI wine_glDeleteNamedStringARB( GLint namelen, char* name ) {
4130   void (*func_glDeleteNamedStringARB)( GLint, char* ) = extension_funcs[EXT_glDeleteNamedStringARB];
4131   TRACE("(%d, %p)\n", namelen, name );
4132   ENTER_GL();
4133   func_glDeleteNamedStringARB( namelen, name );
4134   LEAVE_GL();
4135 }
4136
4137 static void WINAPI wine_glDeleteNamesAMD( GLenum identifier, GLuint num, GLuint* names ) {
4138   void (*func_glDeleteNamesAMD)( GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glDeleteNamesAMD];
4139   TRACE("(%d, %d, %p)\n", identifier, num, names );
4140   ENTER_GL();
4141   func_glDeleteNamesAMD( identifier, num, names );
4142   LEAVE_GL();
4143 }
4144
4145 static void WINAPI wine_glDeleteObjectARB( unsigned int obj ) {
4146   void (*func_glDeleteObjectARB)( unsigned int ) = extension_funcs[EXT_glDeleteObjectARB];
4147   TRACE("(%d)\n", obj );
4148   ENTER_GL();
4149   func_glDeleteObjectARB( obj );
4150   LEAVE_GL();
4151 }
4152
4153 static void WINAPI wine_glDeleteObjectBufferATI( GLuint buffer ) {
4154   void (*func_glDeleteObjectBufferATI)( GLuint ) = extension_funcs[EXT_glDeleteObjectBufferATI];
4155   TRACE("(%d)\n", buffer );
4156   ENTER_GL();
4157   func_glDeleteObjectBufferATI( buffer );
4158   LEAVE_GL();
4159 }
4160
4161 static void WINAPI wine_glDeleteOcclusionQueriesNV( GLsizei n, GLuint* ids ) {
4162   void (*func_glDeleteOcclusionQueriesNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteOcclusionQueriesNV];
4163   TRACE("(%d, %p)\n", n, ids );
4164   ENTER_GL();
4165   func_glDeleteOcclusionQueriesNV( n, ids );
4166   LEAVE_GL();
4167 }
4168
4169 static void WINAPI wine_glDeletePerfMonitorsAMD( GLsizei n, GLuint* monitors ) {
4170   void (*func_glDeletePerfMonitorsAMD)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeletePerfMonitorsAMD];
4171   TRACE("(%d, %p)\n", n, monitors );
4172   ENTER_GL();
4173   func_glDeletePerfMonitorsAMD( n, monitors );
4174   LEAVE_GL();
4175 }
4176
4177 static void WINAPI wine_glDeleteProgram( GLuint program ) {
4178   void (*func_glDeleteProgram)( GLuint ) = extension_funcs[EXT_glDeleteProgram];
4179   TRACE("(%d)\n", program );
4180   ENTER_GL();
4181   func_glDeleteProgram( program );
4182   LEAVE_GL();
4183 }
4184
4185 static void WINAPI wine_glDeleteProgramPipelines( GLsizei n, GLuint* pipelines ) {
4186   void (*func_glDeleteProgramPipelines)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteProgramPipelines];
4187   TRACE("(%d, %p)\n", n, pipelines );
4188   ENTER_GL();
4189   func_glDeleteProgramPipelines( n, pipelines );
4190   LEAVE_GL();
4191 }
4192
4193 static void WINAPI wine_glDeleteProgramsARB( GLsizei n, GLuint* programs ) {
4194   void (*func_glDeleteProgramsARB)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteProgramsARB];
4195   TRACE("(%d, %p)\n", n, programs );
4196   ENTER_GL();
4197   func_glDeleteProgramsARB( n, programs );
4198   LEAVE_GL();
4199 }
4200
4201 static void WINAPI wine_glDeleteProgramsNV( GLsizei n, GLuint* programs ) {
4202   void (*func_glDeleteProgramsNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteProgramsNV];
4203   TRACE("(%d, %p)\n", n, programs );
4204   ENTER_GL();
4205   func_glDeleteProgramsNV( n, programs );
4206   LEAVE_GL();
4207 }
4208
4209 static void WINAPI wine_glDeleteQueries( GLsizei n, GLuint* ids ) {
4210   void (*func_glDeleteQueries)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteQueries];
4211   TRACE("(%d, %p)\n", n, ids );
4212   ENTER_GL();
4213   func_glDeleteQueries( n, ids );
4214   LEAVE_GL();
4215 }
4216
4217 static void WINAPI wine_glDeleteQueriesARB( GLsizei n, GLuint* ids ) {
4218   void (*func_glDeleteQueriesARB)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteQueriesARB];
4219   TRACE("(%d, %p)\n", n, ids );
4220   ENTER_GL();
4221   func_glDeleteQueriesARB( n, ids );
4222   LEAVE_GL();
4223 }
4224
4225 static void WINAPI wine_glDeleteRenderbuffers( GLsizei n, GLuint* renderbuffers ) {
4226   void (*func_glDeleteRenderbuffers)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteRenderbuffers];
4227   TRACE("(%d, %p)\n", n, renderbuffers );
4228   ENTER_GL();
4229   func_glDeleteRenderbuffers( n, renderbuffers );
4230   LEAVE_GL();
4231 }
4232
4233 static void WINAPI wine_glDeleteRenderbuffersEXT( GLsizei n, GLuint* renderbuffers ) {
4234   void (*func_glDeleteRenderbuffersEXT)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteRenderbuffersEXT];
4235   TRACE("(%d, %p)\n", n, renderbuffers );
4236   ENTER_GL();
4237   func_glDeleteRenderbuffersEXT( n, renderbuffers );
4238   LEAVE_GL();
4239 }
4240
4241 static void WINAPI wine_glDeleteSamplers( GLsizei count, GLuint* samplers ) {
4242   void (*func_glDeleteSamplers)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteSamplers];
4243   TRACE("(%d, %p)\n", count, samplers );
4244   ENTER_GL();
4245   func_glDeleteSamplers( count, samplers );
4246   LEAVE_GL();
4247 }
4248
4249 static void WINAPI wine_glDeleteShader( GLuint shader ) {
4250   void (*func_glDeleteShader)( GLuint ) = extension_funcs[EXT_glDeleteShader];
4251   TRACE("(%d)\n", shader );
4252   ENTER_GL();
4253   func_glDeleteShader( shader );
4254   LEAVE_GL();
4255 }
4256
4257 static void WINAPI wine_glDeleteSync( GLvoid* sync ) {
4258   void (*func_glDeleteSync)( GLvoid* ) = extension_funcs[EXT_glDeleteSync];
4259   TRACE("(%p)\n", sync );
4260   ENTER_GL();
4261   func_glDeleteSync( sync );
4262   LEAVE_GL();
4263 }
4264
4265 static void WINAPI wine_glDeleteTexturesEXT( GLsizei n, GLuint* textures ) {
4266   void (*func_glDeleteTexturesEXT)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteTexturesEXT];
4267   TRACE("(%d, %p)\n", n, textures );
4268   ENTER_GL();
4269   func_glDeleteTexturesEXT( n, textures );
4270   LEAVE_GL();
4271 }
4272
4273 static void WINAPI wine_glDeleteTransformFeedbacks( GLsizei n, GLuint* ids ) {
4274   void (*func_glDeleteTransformFeedbacks)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteTransformFeedbacks];
4275   TRACE("(%d, %p)\n", n, ids );
4276   ENTER_GL();
4277   func_glDeleteTransformFeedbacks( n, ids );
4278   LEAVE_GL();
4279 }
4280
4281 static void WINAPI wine_glDeleteTransformFeedbacksNV( GLsizei n, GLuint* ids ) {
4282   void (*func_glDeleteTransformFeedbacksNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteTransformFeedbacksNV];
4283   TRACE("(%d, %p)\n", n, ids );
4284   ENTER_GL();
4285   func_glDeleteTransformFeedbacksNV( n, ids );
4286   LEAVE_GL();
4287 }
4288
4289 static void WINAPI wine_glDeleteVertexArrays( GLsizei n, GLuint* arrays ) {
4290   void (*func_glDeleteVertexArrays)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteVertexArrays];
4291   TRACE("(%d, %p)\n", n, arrays );
4292   ENTER_GL();
4293   func_glDeleteVertexArrays( n, arrays );
4294   LEAVE_GL();
4295 }
4296
4297 static void WINAPI wine_glDeleteVertexArraysAPPLE( GLsizei n, GLuint* arrays ) {
4298   void (*func_glDeleteVertexArraysAPPLE)( GLsizei, GLuint* ) = extension_funcs[EXT_glDeleteVertexArraysAPPLE];
4299   TRACE("(%d, %p)\n", n, arrays );
4300   ENTER_GL();
4301   func_glDeleteVertexArraysAPPLE( n, arrays );
4302   LEAVE_GL();
4303 }
4304
4305 static void WINAPI wine_glDeleteVertexShaderEXT( GLuint id ) {
4306   void (*func_glDeleteVertexShaderEXT)( GLuint ) = extension_funcs[EXT_glDeleteVertexShaderEXT];
4307   TRACE("(%d)\n", id );
4308   ENTER_GL();
4309   func_glDeleteVertexShaderEXT( id );
4310   LEAVE_GL();
4311 }
4312
4313 static void WINAPI wine_glDepthBoundsEXT( GLclampd zmin, GLclampd zmax ) {
4314   void (*func_glDepthBoundsEXT)( GLclampd, GLclampd ) = extension_funcs[EXT_glDepthBoundsEXT];
4315   TRACE("(%f, %f)\n", zmin, zmax );
4316   ENTER_GL();
4317   func_glDepthBoundsEXT( zmin, zmax );
4318   LEAVE_GL();
4319 }
4320
4321 static void WINAPI wine_glDepthBoundsdNV( GLdouble zmin, GLdouble zmax ) {
4322   void (*func_glDepthBoundsdNV)( GLdouble, GLdouble ) = extension_funcs[EXT_glDepthBoundsdNV];
4323   TRACE("(%f, %f)\n", zmin, zmax );
4324   ENTER_GL();
4325   func_glDepthBoundsdNV( zmin, zmax );
4326   LEAVE_GL();
4327 }
4328
4329 static void WINAPI wine_glDepthRangeArrayv( GLuint first, GLsizei count, GLclampd* v ) {
4330   void (*func_glDepthRangeArrayv)( GLuint, GLsizei, GLclampd* ) = extension_funcs[EXT_glDepthRangeArrayv];
4331   TRACE("(%d, %d, %p)\n", first, count, v );
4332   ENTER_GL();
4333   func_glDepthRangeArrayv( first, count, v );
4334   LEAVE_GL();
4335 }
4336
4337 static void WINAPI wine_glDepthRangeIndexed( GLuint index, GLclampd n, GLclampd f ) {
4338   void (*func_glDepthRangeIndexed)( GLuint, GLclampd, GLclampd ) = extension_funcs[EXT_glDepthRangeIndexed];
4339   TRACE("(%d, %f, %f)\n", index, n, f );
4340   ENTER_GL();
4341   func_glDepthRangeIndexed( index, n, f );
4342   LEAVE_GL();
4343 }
4344
4345 static void WINAPI wine_glDepthRangedNV( GLdouble zNear, GLdouble zFar ) {
4346   void (*func_glDepthRangedNV)( GLdouble, GLdouble ) = extension_funcs[EXT_glDepthRangedNV];
4347   TRACE("(%f, %f)\n", zNear, zFar );
4348   ENTER_GL();
4349   func_glDepthRangedNV( zNear, zFar );
4350   LEAVE_GL();
4351 }
4352
4353 static void WINAPI wine_glDepthRangef( GLclampf n, GLclampf f ) {
4354   void (*func_glDepthRangef)( GLclampf, GLclampf ) = extension_funcs[EXT_glDepthRangef];
4355   TRACE("(%f, %f)\n", n, f );
4356   ENTER_GL();
4357   func_glDepthRangef( n, f );
4358   LEAVE_GL();
4359 }
4360
4361 static void WINAPI wine_glDetachObjectARB( unsigned int containerObj, unsigned int attachedObj ) {
4362   void (*func_glDetachObjectARB)( unsigned int, unsigned int ) = extension_funcs[EXT_glDetachObjectARB];
4363   TRACE("(%d, %d)\n", containerObj, attachedObj );
4364   ENTER_GL();
4365   func_glDetachObjectARB( containerObj, attachedObj );
4366   LEAVE_GL();
4367 }
4368
4369 static void WINAPI wine_glDetachShader( GLuint program, GLuint shader ) {
4370   void (*func_glDetachShader)( GLuint, GLuint ) = extension_funcs[EXT_glDetachShader];
4371   TRACE("(%d, %d)\n", program, shader );
4372   ENTER_GL();
4373   func_glDetachShader( program, shader );
4374   LEAVE_GL();
4375 }
4376
4377 static void WINAPI wine_glDetailTexFuncSGIS( GLenum target, GLsizei n, GLfloat* points ) {
4378   void (*func_glDetailTexFuncSGIS)( GLenum, GLsizei, GLfloat* ) = extension_funcs[EXT_glDetailTexFuncSGIS];
4379   TRACE("(%d, %d, %p)\n", target, n, points );
4380   ENTER_GL();
4381   func_glDetailTexFuncSGIS( target, n, points );
4382   LEAVE_GL();
4383 }
4384
4385 static void WINAPI wine_glDisableClientStateIndexedEXT( GLenum array, GLuint index ) {
4386   void (*func_glDisableClientStateIndexedEXT)( GLenum, GLuint ) = extension_funcs[EXT_glDisableClientStateIndexedEXT];
4387   TRACE("(%d, %d)\n", array, index );
4388   ENTER_GL();
4389   func_glDisableClientStateIndexedEXT( array, index );
4390   LEAVE_GL();
4391 }
4392
4393 static void WINAPI wine_glDisableIndexedEXT( GLenum target, GLuint index ) {
4394   void (*func_glDisableIndexedEXT)( GLenum, GLuint ) = extension_funcs[EXT_glDisableIndexedEXT];
4395   TRACE("(%d, %d)\n", target, index );
4396   ENTER_GL();
4397   func_glDisableIndexedEXT( target, index );
4398   LEAVE_GL();
4399 }
4400
4401 static void WINAPI wine_glDisableVariantClientStateEXT( GLuint id ) {
4402   void (*func_glDisableVariantClientStateEXT)( GLuint ) = extension_funcs[EXT_glDisableVariantClientStateEXT];
4403   TRACE("(%d)\n", id );
4404   ENTER_GL();
4405   func_glDisableVariantClientStateEXT( id );
4406   LEAVE_GL();
4407 }
4408
4409 static void WINAPI wine_glDisableVertexAttribAPPLE( GLuint index, GLenum pname ) {
4410   void (*func_glDisableVertexAttribAPPLE)( GLuint, GLenum ) = extension_funcs[EXT_glDisableVertexAttribAPPLE];
4411   TRACE("(%d, %d)\n", index, pname );
4412   ENTER_GL();
4413   func_glDisableVertexAttribAPPLE( index, pname );
4414   LEAVE_GL();
4415 }
4416
4417 static void WINAPI wine_glDisableVertexAttribArray( GLuint index ) {
4418   void (*func_glDisableVertexAttribArray)( GLuint ) = extension_funcs[EXT_glDisableVertexAttribArray];
4419   TRACE("(%d)\n", index );
4420   ENTER_GL();
4421   func_glDisableVertexAttribArray( index );
4422   LEAVE_GL();
4423 }
4424
4425 static void WINAPI wine_glDisableVertexAttribArrayARB( GLuint index ) {
4426   void (*func_glDisableVertexAttribArrayARB)( GLuint ) = extension_funcs[EXT_glDisableVertexAttribArrayARB];
4427   TRACE("(%d)\n", index );
4428   ENTER_GL();
4429   func_glDisableVertexAttribArrayARB( index );
4430   LEAVE_GL();
4431 }
4432
4433 static void WINAPI wine_glDisablei( GLenum target, GLuint index ) {
4434   void (*func_glDisablei)( GLenum, GLuint ) = extension_funcs[EXT_glDisablei];
4435   TRACE("(%d, %d)\n", target, index );
4436   ENTER_GL();
4437   func_glDisablei( target, index );
4438   LEAVE_GL();
4439 }
4440
4441 static void WINAPI wine_glDrawArraysEXT( GLenum mode, GLint first, GLsizei count ) {
4442   void (*func_glDrawArraysEXT)( GLenum, GLint, GLsizei ) = extension_funcs[EXT_glDrawArraysEXT];
4443   TRACE("(%d, %d, %d)\n", mode, first, count );
4444   ENTER_GL();
4445   func_glDrawArraysEXT( mode, first, count );
4446   LEAVE_GL();
4447 }
4448
4449 static void WINAPI wine_glDrawArraysIndirect( GLenum mode, GLvoid* indirect ) {
4450   void (*func_glDrawArraysIndirect)( GLenum, GLvoid* ) = extension_funcs[EXT_glDrawArraysIndirect];
4451   TRACE("(%d, %p)\n", mode, indirect );
4452   ENTER_GL();
4453   func_glDrawArraysIndirect( mode, indirect );
4454   LEAVE_GL();
4455 }
4456
4457 static void WINAPI wine_glDrawArraysInstanced( GLenum mode, GLint first, GLsizei count, GLsizei primcount ) {
4458   void (*func_glDrawArraysInstanced)( GLenum, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glDrawArraysInstanced];
4459   TRACE("(%d, %d, %d, %d)\n", mode, first, count, primcount );
4460   ENTER_GL();
4461   func_glDrawArraysInstanced( mode, first, count, primcount );
4462   LEAVE_GL();
4463 }
4464
4465 static void WINAPI wine_glDrawArraysInstancedARB( GLenum mode, GLint first, GLsizei count, GLsizei primcount ) {
4466   void (*func_glDrawArraysInstancedARB)( GLenum, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glDrawArraysInstancedARB];
4467   TRACE("(%d, %d, %d, %d)\n", mode, first, count, primcount );
4468   ENTER_GL();
4469   func_glDrawArraysInstancedARB( mode, first, count, primcount );
4470   LEAVE_GL();
4471 }
4472
4473 static void WINAPI wine_glDrawArraysInstancedEXT( GLenum mode, GLint start, GLsizei count, GLsizei primcount ) {
4474   void (*func_glDrawArraysInstancedEXT)( GLenum, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glDrawArraysInstancedEXT];
4475   TRACE("(%d, %d, %d, %d)\n", mode, start, count, primcount );
4476   ENTER_GL();
4477   func_glDrawArraysInstancedEXT( mode, start, count, primcount );
4478   LEAVE_GL();
4479 }
4480
4481 static void WINAPI wine_glDrawBufferRegion( GLenum region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest ) {
4482   void (*func_glDrawBufferRegion)( GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLint ) = extension_funcs[EXT_glDrawBufferRegion];
4483   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", region, x, y, width, height, xDest, yDest );
4484   ENTER_GL();
4485   func_glDrawBufferRegion( region, x, y, width, height, xDest, yDest );
4486   LEAVE_GL();
4487 }
4488
4489 static void WINAPI wine_glDrawBuffers( GLsizei n, GLenum* bufs ) {
4490   void (*func_glDrawBuffers)( GLsizei, GLenum* ) = extension_funcs[EXT_glDrawBuffers];
4491   TRACE("(%d, %p)\n", n, bufs );
4492   ENTER_GL();
4493   func_glDrawBuffers( n, bufs );
4494   LEAVE_GL();
4495 }
4496
4497 static void WINAPI wine_glDrawBuffersARB( GLsizei n, GLenum* bufs ) {
4498   void (*func_glDrawBuffersARB)( GLsizei, GLenum* ) = extension_funcs[EXT_glDrawBuffersARB];
4499   TRACE("(%d, %p)\n", n, bufs );
4500   ENTER_GL();
4501   func_glDrawBuffersARB( n, bufs );
4502   LEAVE_GL();
4503 }
4504
4505 static void WINAPI wine_glDrawBuffersATI( GLsizei n, GLenum* bufs ) {
4506   void (*func_glDrawBuffersATI)( GLsizei, GLenum* ) = extension_funcs[EXT_glDrawBuffersATI];
4507   TRACE("(%d, %p)\n", n, bufs );
4508   ENTER_GL();
4509   func_glDrawBuffersATI( n, bufs );
4510   LEAVE_GL();
4511 }
4512
4513 static void WINAPI wine_glDrawElementArrayAPPLE( GLenum mode, GLint first, GLsizei count ) {
4514   void (*func_glDrawElementArrayAPPLE)( GLenum, GLint, GLsizei ) = extension_funcs[EXT_glDrawElementArrayAPPLE];
4515   TRACE("(%d, %d, %d)\n", mode, first, count );
4516   ENTER_GL();
4517   func_glDrawElementArrayAPPLE( mode, first, count );
4518   LEAVE_GL();
4519 }
4520
4521 static void WINAPI wine_glDrawElementArrayATI( GLenum mode, GLsizei count ) {
4522   void (*func_glDrawElementArrayATI)( GLenum, GLsizei ) = extension_funcs[EXT_glDrawElementArrayATI];
4523   TRACE("(%d, %d)\n", mode, count );
4524   ENTER_GL();
4525   func_glDrawElementArrayATI( mode, count );
4526   LEAVE_GL();
4527 }
4528
4529 static void WINAPI wine_glDrawElementsBaseVertex( GLenum mode, GLsizei count, GLenum type, GLvoid* indices, GLint basevertex ) {
4530   void (*func_glDrawElementsBaseVertex)( GLenum, GLsizei, GLenum, GLvoid*, GLint ) = extension_funcs[EXT_glDrawElementsBaseVertex];
4531   TRACE("(%d, %d, %d, %p, %d)\n", mode, count, type, indices, basevertex );
4532   ENTER_GL();
4533   func_glDrawElementsBaseVertex( mode, count, type, indices, basevertex );
4534   LEAVE_GL();
4535 }
4536
4537 static void WINAPI wine_glDrawElementsIndirect( GLenum mode, GLenum type, GLvoid* indirect ) {
4538   void (*func_glDrawElementsIndirect)( GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glDrawElementsIndirect];
4539   TRACE("(%d, %d, %p)\n", mode, type, indirect );
4540   ENTER_GL();
4541   func_glDrawElementsIndirect( mode, type, indirect );
4542   LEAVE_GL();
4543 }
4544
4545 static void WINAPI wine_glDrawElementsInstanced( GLenum mode, GLsizei count, GLenum type, GLvoid* indices, GLsizei primcount ) {
4546   void (*func_glDrawElementsInstanced)( GLenum, GLsizei, GLenum, GLvoid*, GLsizei ) = extension_funcs[EXT_glDrawElementsInstanced];
4547   TRACE("(%d, %d, %d, %p, %d)\n", mode, count, type, indices, primcount );
4548   ENTER_GL();
4549   func_glDrawElementsInstanced( mode, count, type, indices, primcount );
4550   LEAVE_GL();
4551 }
4552
4553 static void WINAPI wine_glDrawElementsInstancedARB( GLenum mode, GLsizei count, GLenum type, GLvoid* indices, GLsizei primcount ) {
4554   void (*func_glDrawElementsInstancedARB)( GLenum, GLsizei, GLenum, GLvoid*, GLsizei ) = extension_funcs[EXT_glDrawElementsInstancedARB];
4555   TRACE("(%d, %d, %d, %p, %d)\n", mode, count, type, indices, primcount );
4556   ENTER_GL();
4557   func_glDrawElementsInstancedARB( mode, count, type, indices, primcount );
4558   LEAVE_GL();
4559 }
4560
4561 static void WINAPI wine_glDrawElementsInstancedBaseVertex( GLenum mode, GLsizei count, GLenum type, GLvoid* indices, GLsizei primcount, GLint basevertex ) {
4562   void (*func_glDrawElementsInstancedBaseVertex)( GLenum, GLsizei, GLenum, GLvoid*, GLsizei, GLint ) = extension_funcs[EXT_glDrawElementsInstancedBaseVertex];
4563   TRACE("(%d, %d, %d, %p, %d, %d)\n", mode, count, type, indices, primcount, basevertex );
4564   ENTER_GL();
4565   func_glDrawElementsInstancedBaseVertex( mode, count, type, indices, primcount, basevertex );
4566   LEAVE_GL();
4567 }
4568
4569 static void WINAPI wine_glDrawElementsInstancedEXT( GLenum mode, GLsizei count, GLenum type, GLvoid* indices, GLsizei primcount ) {
4570   void (*func_glDrawElementsInstancedEXT)( GLenum, GLsizei, GLenum, GLvoid*, GLsizei ) = extension_funcs[EXT_glDrawElementsInstancedEXT];
4571   TRACE("(%d, %d, %d, %p, %d)\n", mode, count, type, indices, primcount );
4572   ENTER_GL();
4573   func_glDrawElementsInstancedEXT( mode, count, type, indices, primcount );
4574   LEAVE_GL();
4575 }
4576
4577 static void WINAPI wine_glDrawMeshArraysSUN( GLenum mode, GLint first, GLsizei count, GLsizei width ) {
4578   void (*func_glDrawMeshArraysSUN)( GLenum, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glDrawMeshArraysSUN];
4579   TRACE("(%d, %d, %d, %d)\n", mode, first, count, width );
4580   ENTER_GL();
4581   func_glDrawMeshArraysSUN( mode, first, count, width );
4582   LEAVE_GL();
4583 }
4584
4585 static void WINAPI wine_glDrawRangeElementArrayAPPLE( GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count ) {
4586   void (*func_glDrawRangeElementArrayAPPLE)( GLenum, GLuint, GLuint, GLint, GLsizei ) = extension_funcs[EXT_glDrawRangeElementArrayAPPLE];
4587   TRACE("(%d, %d, %d, %d, %d)\n", mode, start, end, first, count );
4588   ENTER_GL();
4589   func_glDrawRangeElementArrayAPPLE( mode, start, end, first, count );
4590   LEAVE_GL();
4591 }
4592
4593 static void WINAPI wine_glDrawRangeElementArrayATI( GLenum mode, GLuint start, GLuint end, GLsizei count ) {
4594   void (*func_glDrawRangeElementArrayATI)( GLenum, GLuint, GLuint, GLsizei ) = extension_funcs[EXT_glDrawRangeElementArrayATI];
4595   TRACE("(%d, %d, %d, %d)\n", mode, start, end, count );
4596   ENTER_GL();
4597   func_glDrawRangeElementArrayATI( mode, start, end, count );
4598   LEAVE_GL();
4599 }
4600
4601 static void WINAPI wine_glDrawRangeElements( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, GLvoid* indices ) {
4602   void (*func_glDrawRangeElements)( GLenum, GLuint, GLuint, GLsizei, GLenum, GLvoid* ) = extension_funcs[EXT_glDrawRangeElements];
4603   TRACE("(%d, %d, %d, %d, %d, %p)\n", mode, start, end, count, type, indices );
4604   ENTER_GL();
4605   func_glDrawRangeElements( mode, start, end, count, type, indices );
4606   LEAVE_GL();
4607 }
4608
4609 static void WINAPI wine_glDrawRangeElementsBaseVertex( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, GLvoid* indices, GLint basevertex ) {
4610   void (*func_glDrawRangeElementsBaseVertex)( GLenum, GLuint, GLuint, GLsizei, GLenum, GLvoid*, GLint ) = extension_funcs[EXT_glDrawRangeElementsBaseVertex];
4611   TRACE("(%d, %d, %d, %d, %d, %p, %d)\n", mode, start, end, count, type, indices, basevertex );
4612   ENTER_GL();
4613   func_glDrawRangeElementsBaseVertex( mode, start, end, count, type, indices, basevertex );
4614   LEAVE_GL();
4615 }
4616
4617 static void WINAPI wine_glDrawRangeElementsEXT( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, GLvoid* indices ) {
4618   void (*func_glDrawRangeElementsEXT)( GLenum, GLuint, GLuint, GLsizei, GLenum, GLvoid* ) = extension_funcs[EXT_glDrawRangeElementsEXT];
4619   TRACE("(%d, %d, %d, %d, %d, %p)\n", mode, start, end, count, type, indices );
4620   ENTER_GL();
4621   func_glDrawRangeElementsEXT( mode, start, end, count, type, indices );
4622   LEAVE_GL();
4623 }
4624
4625 static void WINAPI wine_glDrawTransformFeedback( GLenum mode, GLuint id ) {
4626   void (*func_glDrawTransformFeedback)( GLenum, GLuint ) = extension_funcs[EXT_glDrawTransformFeedback];
4627   TRACE("(%d, %d)\n", mode, id );
4628   ENTER_GL();
4629   func_glDrawTransformFeedback( mode, id );
4630   LEAVE_GL();
4631 }
4632
4633 static void WINAPI wine_glDrawTransformFeedbackNV( GLenum mode, GLuint id ) {
4634   void (*func_glDrawTransformFeedbackNV)( GLenum, GLuint ) = extension_funcs[EXT_glDrawTransformFeedbackNV];
4635   TRACE("(%d, %d)\n", mode, id );
4636   ENTER_GL();
4637   func_glDrawTransformFeedbackNV( mode, id );
4638   LEAVE_GL();
4639 }
4640
4641 static void WINAPI wine_glDrawTransformFeedbackStream( GLenum mode, GLuint id, GLuint stream ) {
4642   void (*func_glDrawTransformFeedbackStream)( GLenum, GLuint, GLuint ) = extension_funcs[EXT_glDrawTransformFeedbackStream];
4643   TRACE("(%d, %d, %d)\n", mode, id, stream );
4644   ENTER_GL();
4645   func_glDrawTransformFeedbackStream( mode, id, stream );
4646   LEAVE_GL();
4647 }
4648
4649 static void WINAPI wine_glEdgeFlagFormatNV( GLsizei stride ) {
4650   void (*func_glEdgeFlagFormatNV)( GLsizei ) = extension_funcs[EXT_glEdgeFlagFormatNV];
4651   TRACE("(%d)\n", stride );
4652   ENTER_GL();
4653   func_glEdgeFlagFormatNV( stride );
4654   LEAVE_GL();
4655 }
4656
4657 static void WINAPI wine_glEdgeFlagPointerEXT( GLsizei stride, GLsizei count, GLboolean* pointer ) {
4658   void (*func_glEdgeFlagPointerEXT)( GLsizei, GLsizei, GLboolean* ) = extension_funcs[EXT_glEdgeFlagPointerEXT];
4659   TRACE("(%d, %d, %p)\n", stride, count, pointer );
4660   ENTER_GL();
4661   func_glEdgeFlagPointerEXT( stride, count, pointer );
4662   LEAVE_GL();
4663 }
4664
4665 static void WINAPI wine_glEdgeFlagPointerListIBM( GLint stride, GLboolean** pointer, GLint ptrstride ) {
4666   void (*func_glEdgeFlagPointerListIBM)( GLint, GLboolean**, GLint ) = extension_funcs[EXT_glEdgeFlagPointerListIBM];
4667   TRACE("(%d, %p, %d)\n", stride, pointer, ptrstride );
4668   ENTER_GL();
4669   func_glEdgeFlagPointerListIBM( stride, pointer, ptrstride );
4670   LEAVE_GL();
4671 }
4672
4673 static void WINAPI wine_glElementPointerAPPLE( GLenum type, GLvoid* pointer ) {
4674   void (*func_glElementPointerAPPLE)( GLenum, GLvoid* ) = extension_funcs[EXT_glElementPointerAPPLE];
4675   TRACE("(%d, %p)\n", type, pointer );
4676   ENTER_GL();
4677   func_glElementPointerAPPLE( type, pointer );
4678   LEAVE_GL();
4679 }
4680
4681 static void WINAPI wine_glElementPointerATI( GLenum type, GLvoid* pointer ) {
4682   void (*func_glElementPointerATI)( GLenum, GLvoid* ) = extension_funcs[EXT_glElementPointerATI];
4683   TRACE("(%d, %p)\n", type, pointer );
4684   ENTER_GL();
4685   func_glElementPointerATI( type, pointer );
4686   LEAVE_GL();
4687 }
4688
4689 static void WINAPI wine_glEnableClientStateIndexedEXT( GLenum array, GLuint index ) {
4690   void (*func_glEnableClientStateIndexedEXT)( GLenum, GLuint ) = extension_funcs[EXT_glEnableClientStateIndexedEXT];
4691   TRACE("(%d, %d)\n", array, index );
4692   ENTER_GL();
4693   func_glEnableClientStateIndexedEXT( array, index );
4694   LEAVE_GL();
4695 }
4696
4697 static void WINAPI wine_glEnableIndexedEXT( GLenum target, GLuint index ) {
4698   void (*func_glEnableIndexedEXT)( GLenum, GLuint ) = extension_funcs[EXT_glEnableIndexedEXT];
4699   TRACE("(%d, %d)\n", target, index );
4700   ENTER_GL();
4701   func_glEnableIndexedEXT( target, index );
4702   LEAVE_GL();
4703 }
4704
4705 static void WINAPI wine_glEnableVariantClientStateEXT( GLuint id ) {
4706   void (*func_glEnableVariantClientStateEXT)( GLuint ) = extension_funcs[EXT_glEnableVariantClientStateEXT];
4707   TRACE("(%d)\n", id );
4708   ENTER_GL();
4709   func_glEnableVariantClientStateEXT( id );
4710   LEAVE_GL();
4711 }
4712
4713 static void WINAPI wine_glEnableVertexAttribAPPLE( GLuint index, GLenum pname ) {
4714   void (*func_glEnableVertexAttribAPPLE)( GLuint, GLenum ) = extension_funcs[EXT_glEnableVertexAttribAPPLE];
4715   TRACE("(%d, %d)\n", index, pname );
4716   ENTER_GL();
4717   func_glEnableVertexAttribAPPLE( index, pname );
4718   LEAVE_GL();
4719 }
4720
4721 static void WINAPI wine_glEnableVertexAttribArray( GLuint index ) {
4722   void (*func_glEnableVertexAttribArray)( GLuint ) = extension_funcs[EXT_glEnableVertexAttribArray];
4723   TRACE("(%d)\n", index );
4724   ENTER_GL();
4725   func_glEnableVertexAttribArray( index );
4726   LEAVE_GL();
4727 }
4728
4729 static void WINAPI wine_glEnableVertexAttribArrayARB( GLuint index ) {
4730   void (*func_glEnableVertexAttribArrayARB)( GLuint ) = extension_funcs[EXT_glEnableVertexAttribArrayARB];
4731   TRACE("(%d)\n", index );
4732   ENTER_GL();
4733   func_glEnableVertexAttribArrayARB( index );
4734   LEAVE_GL();
4735 }
4736
4737 static void WINAPI wine_glEnablei( GLenum target, GLuint index ) {
4738   void (*func_glEnablei)( GLenum, GLuint ) = extension_funcs[EXT_glEnablei];
4739   TRACE("(%d, %d)\n", target, index );
4740   ENTER_GL();
4741   func_glEnablei( target, index );
4742   LEAVE_GL();
4743 }
4744
4745 static void WINAPI wine_glEndConditionalRender( void ) {
4746   void (*func_glEndConditionalRender)( void ) = extension_funcs[EXT_glEndConditionalRender];
4747   TRACE("()\n");
4748   ENTER_GL();
4749   func_glEndConditionalRender( );
4750   LEAVE_GL();
4751 }
4752
4753 static void WINAPI wine_glEndConditionalRenderNV( void ) {
4754   void (*func_glEndConditionalRenderNV)( void ) = extension_funcs[EXT_glEndConditionalRenderNV];
4755   TRACE("()\n");
4756   ENTER_GL();
4757   func_glEndConditionalRenderNV( );
4758   LEAVE_GL();
4759 }
4760
4761 static void WINAPI wine_glEndFragmentShaderATI( void ) {
4762   void (*func_glEndFragmentShaderATI)( void ) = extension_funcs[EXT_glEndFragmentShaderATI];
4763   TRACE("()\n");
4764   ENTER_GL();
4765   func_glEndFragmentShaderATI( );
4766   LEAVE_GL();
4767 }
4768
4769 static void WINAPI wine_glEndOcclusionQueryNV( void ) {
4770   void (*func_glEndOcclusionQueryNV)( void ) = extension_funcs[EXT_glEndOcclusionQueryNV];
4771   TRACE("()\n");
4772   ENTER_GL();
4773   func_glEndOcclusionQueryNV( );
4774   LEAVE_GL();
4775 }
4776
4777 static void WINAPI wine_glEndPerfMonitorAMD( GLuint monitor ) {
4778   void (*func_glEndPerfMonitorAMD)( GLuint ) = extension_funcs[EXT_glEndPerfMonitorAMD];
4779   TRACE("(%d)\n", monitor );
4780   ENTER_GL();
4781   func_glEndPerfMonitorAMD( monitor );
4782   LEAVE_GL();
4783 }
4784
4785 static void WINAPI wine_glEndQuery( GLenum target ) {
4786   void (*func_glEndQuery)( GLenum ) = extension_funcs[EXT_glEndQuery];
4787   TRACE("(%d)\n", target );
4788   ENTER_GL();
4789   func_glEndQuery( target );
4790   LEAVE_GL();
4791 }
4792
4793 static void WINAPI wine_glEndQueryARB( GLenum target ) {
4794   void (*func_glEndQueryARB)( GLenum ) = extension_funcs[EXT_glEndQueryARB];
4795   TRACE("(%d)\n", target );
4796   ENTER_GL();
4797   func_glEndQueryARB( target );
4798   LEAVE_GL();
4799 }
4800
4801 static void WINAPI wine_glEndQueryIndexed( GLenum target, GLuint index ) {
4802   void (*func_glEndQueryIndexed)( GLenum, GLuint ) = extension_funcs[EXT_glEndQueryIndexed];
4803   TRACE("(%d, %d)\n", target, index );
4804   ENTER_GL();
4805   func_glEndQueryIndexed( target, index );
4806   LEAVE_GL();
4807 }
4808
4809 static void WINAPI wine_glEndTransformFeedback( void ) {
4810   void (*func_glEndTransformFeedback)( void ) = extension_funcs[EXT_glEndTransformFeedback];
4811   TRACE("()\n");
4812   ENTER_GL();
4813   func_glEndTransformFeedback( );
4814   LEAVE_GL();
4815 }
4816
4817 static void WINAPI wine_glEndTransformFeedbackEXT( void ) {
4818   void (*func_glEndTransformFeedbackEXT)( void ) = extension_funcs[EXT_glEndTransformFeedbackEXT];
4819   TRACE("()\n");
4820   ENTER_GL();
4821   func_glEndTransformFeedbackEXT( );
4822   LEAVE_GL();
4823 }
4824
4825 static void WINAPI wine_glEndTransformFeedbackNV( void ) {
4826   void (*func_glEndTransformFeedbackNV)( void ) = extension_funcs[EXT_glEndTransformFeedbackNV];
4827   TRACE("()\n");
4828   ENTER_GL();
4829   func_glEndTransformFeedbackNV( );
4830   LEAVE_GL();
4831 }
4832
4833 static void WINAPI wine_glEndVertexShaderEXT( void ) {
4834   void (*func_glEndVertexShaderEXT)( void ) = extension_funcs[EXT_glEndVertexShaderEXT];
4835   TRACE("()\n");
4836   ENTER_GL();
4837   func_glEndVertexShaderEXT( );
4838   LEAVE_GL();
4839 }
4840
4841 static void WINAPI wine_glEndVideoCaptureNV( GLuint video_capture_slot ) {
4842   void (*func_glEndVideoCaptureNV)( GLuint ) = extension_funcs[EXT_glEndVideoCaptureNV];
4843   TRACE("(%d)\n", video_capture_slot );
4844   ENTER_GL();
4845   func_glEndVideoCaptureNV( video_capture_slot );
4846   LEAVE_GL();
4847 }
4848
4849 static void WINAPI wine_glEvalMapsNV( GLenum target, GLenum mode ) {
4850   void (*func_glEvalMapsNV)( GLenum, GLenum ) = extension_funcs[EXT_glEvalMapsNV];
4851   TRACE("(%d, %d)\n", target, mode );
4852   ENTER_GL();
4853   func_glEvalMapsNV( target, mode );
4854   LEAVE_GL();
4855 }
4856
4857 static void WINAPI wine_glExecuteProgramNV( GLenum target, GLuint id, GLfloat* params ) {
4858   void (*func_glExecuteProgramNV)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glExecuteProgramNV];
4859   TRACE("(%d, %d, %p)\n", target, id, params );
4860   ENTER_GL();
4861   func_glExecuteProgramNV( target, id, params );
4862   LEAVE_GL();
4863 }
4864
4865 static void WINAPI wine_glExtractComponentEXT( GLuint res, GLuint src, GLuint num ) {
4866   void (*func_glExtractComponentEXT)( GLuint, GLuint, GLuint ) = extension_funcs[EXT_glExtractComponentEXT];
4867   TRACE("(%d, %d, %d)\n", res, src, num );
4868   ENTER_GL();
4869   func_glExtractComponentEXT( res, src, num );
4870   LEAVE_GL();
4871 }
4872
4873 static GLvoid* WINAPI wine_glFenceSync( GLenum condition, GLbitfield flags ) {
4874   GLvoid* ret_value;
4875   GLvoid* (*func_glFenceSync)( GLenum, GLbitfield ) = extension_funcs[EXT_glFenceSync];
4876   TRACE("(%d, %d)\n", condition, flags );
4877   ENTER_GL();
4878   ret_value = func_glFenceSync( condition, flags );
4879   LEAVE_GL();
4880   return ret_value;
4881 }
4882
4883 static void WINAPI wine_glFinalCombinerInputNV( GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage ) {
4884   void (*func_glFinalCombinerInputNV)( GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glFinalCombinerInputNV];
4885   TRACE("(%d, %d, %d, %d)\n", variable, input, mapping, componentUsage );
4886   ENTER_GL();
4887   func_glFinalCombinerInputNV( variable, input, mapping, componentUsage );
4888   LEAVE_GL();
4889 }
4890
4891 static GLint WINAPI wine_glFinishAsyncSGIX( GLuint* markerp ) {
4892   GLint ret_value;
4893   GLint (*func_glFinishAsyncSGIX)( GLuint* ) = extension_funcs[EXT_glFinishAsyncSGIX];
4894   TRACE("(%p)\n", markerp );
4895   ENTER_GL();
4896   ret_value = func_glFinishAsyncSGIX( markerp );
4897   LEAVE_GL();
4898   return ret_value;
4899 }
4900
4901 static void WINAPI wine_glFinishFenceAPPLE( GLuint fence ) {
4902   void (*func_glFinishFenceAPPLE)( GLuint ) = extension_funcs[EXT_glFinishFenceAPPLE];
4903   TRACE("(%d)\n", fence );
4904   ENTER_GL();
4905   func_glFinishFenceAPPLE( fence );
4906   LEAVE_GL();
4907 }
4908
4909 static void WINAPI wine_glFinishFenceNV( GLuint fence ) {
4910   void (*func_glFinishFenceNV)( GLuint ) = extension_funcs[EXT_glFinishFenceNV];
4911   TRACE("(%d)\n", fence );
4912   ENTER_GL();
4913   func_glFinishFenceNV( fence );
4914   LEAVE_GL();
4915 }
4916
4917 static void WINAPI wine_glFinishObjectAPPLE( GLenum object, GLint name ) {
4918   void (*func_glFinishObjectAPPLE)( GLenum, GLint ) = extension_funcs[EXT_glFinishObjectAPPLE];
4919   TRACE("(%d, %d)\n", object, name );
4920   ENTER_GL();
4921   func_glFinishObjectAPPLE( object, name );
4922   LEAVE_GL();
4923 }
4924
4925 static void WINAPI wine_glFinishTextureSUNX( void ) {
4926   void (*func_glFinishTextureSUNX)( void ) = extension_funcs[EXT_glFinishTextureSUNX];
4927   TRACE("()\n");
4928   ENTER_GL();
4929   func_glFinishTextureSUNX( );
4930   LEAVE_GL();
4931 }
4932
4933 static void WINAPI wine_glFlushMappedBufferRange( GLenum target, INT_PTR offset, INT_PTR length ) {
4934   void (*func_glFlushMappedBufferRange)( GLenum, INT_PTR, INT_PTR ) = extension_funcs[EXT_glFlushMappedBufferRange];
4935   TRACE("(%d, %ld, %ld)\n", target, offset, length );
4936   ENTER_GL();
4937   func_glFlushMappedBufferRange( target, offset, length );
4938   LEAVE_GL();
4939 }
4940
4941 static void WINAPI wine_glFlushMappedBufferRangeAPPLE( GLenum target, INT_PTR offset, INT_PTR size ) {
4942   void (*func_glFlushMappedBufferRangeAPPLE)( GLenum, INT_PTR, INT_PTR ) = extension_funcs[EXT_glFlushMappedBufferRangeAPPLE];
4943   TRACE("(%d, %ld, %ld)\n", target, offset, size );
4944   ENTER_GL();
4945   func_glFlushMappedBufferRangeAPPLE( target, offset, size );
4946   LEAVE_GL();
4947 }
4948
4949 static void WINAPI wine_glFlushMappedNamedBufferRangeEXT( GLuint buffer, INT_PTR offset, INT_PTR length ) {
4950   void (*func_glFlushMappedNamedBufferRangeEXT)( GLuint, INT_PTR, INT_PTR ) = extension_funcs[EXT_glFlushMappedNamedBufferRangeEXT];
4951   TRACE("(%d, %ld, %ld)\n", buffer, offset, length );
4952   ENTER_GL();
4953   func_glFlushMappedNamedBufferRangeEXT( buffer, offset, length );
4954   LEAVE_GL();
4955 }
4956
4957 static void WINAPI wine_glFlushPixelDataRangeNV( GLenum target ) {
4958   void (*func_glFlushPixelDataRangeNV)( GLenum ) = extension_funcs[EXT_glFlushPixelDataRangeNV];
4959   TRACE("(%d)\n", target );
4960   ENTER_GL();
4961   func_glFlushPixelDataRangeNV( target );
4962   LEAVE_GL();
4963 }
4964
4965 static void WINAPI wine_glFlushRasterSGIX( void ) {
4966   void (*func_glFlushRasterSGIX)( void ) = extension_funcs[EXT_glFlushRasterSGIX];
4967   TRACE("()\n");
4968   ENTER_GL();
4969   func_glFlushRasterSGIX( );
4970   LEAVE_GL();
4971 }
4972
4973 static void WINAPI wine_glFlushVertexArrayRangeAPPLE( GLsizei length, GLvoid* pointer ) {
4974   void (*func_glFlushVertexArrayRangeAPPLE)( GLsizei, GLvoid* ) = extension_funcs[EXT_glFlushVertexArrayRangeAPPLE];
4975   TRACE("(%d, %p)\n", length, pointer );
4976   ENTER_GL();
4977   func_glFlushVertexArrayRangeAPPLE( length, pointer );
4978   LEAVE_GL();
4979 }
4980
4981 static void WINAPI wine_glFlushVertexArrayRangeNV( void ) {
4982   void (*func_glFlushVertexArrayRangeNV)( void ) = extension_funcs[EXT_glFlushVertexArrayRangeNV];
4983   TRACE("()\n");
4984   ENTER_GL();
4985   func_glFlushVertexArrayRangeNV( );
4986   LEAVE_GL();
4987 }
4988
4989 static void WINAPI wine_glFogCoordFormatNV( GLenum type, GLsizei stride ) {
4990   void (*func_glFogCoordFormatNV)( GLenum, GLsizei ) = extension_funcs[EXT_glFogCoordFormatNV];
4991   TRACE("(%d, %d)\n", type, stride );
4992   ENTER_GL();
4993   func_glFogCoordFormatNV( type, stride );
4994   LEAVE_GL();
4995 }
4996
4997 static void WINAPI wine_glFogCoordPointer( GLenum type, GLsizei stride, GLvoid* pointer ) {
4998   void (*func_glFogCoordPointer)( GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glFogCoordPointer];
4999   TRACE("(%d, %d, %p)\n", type, stride, pointer );
5000   ENTER_GL();
5001   func_glFogCoordPointer( type, stride, pointer );
5002   LEAVE_GL();
5003 }
5004
5005 static void WINAPI wine_glFogCoordPointerEXT( GLenum type, GLsizei stride, GLvoid* pointer ) {
5006   void (*func_glFogCoordPointerEXT)( GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glFogCoordPointerEXT];
5007   TRACE("(%d, %d, %p)\n", type, stride, pointer );
5008   ENTER_GL();
5009   func_glFogCoordPointerEXT( type, stride, pointer );
5010   LEAVE_GL();
5011 }
5012
5013 static void WINAPI wine_glFogCoordPointerListIBM( GLenum type, GLint stride, GLvoid** pointer, GLint ptrstride ) {
5014   void (*func_glFogCoordPointerListIBM)( GLenum, GLint, GLvoid**, GLint ) = extension_funcs[EXT_glFogCoordPointerListIBM];
5015   TRACE("(%d, %d, %p, %d)\n", type, stride, pointer, ptrstride );
5016   ENTER_GL();
5017   func_glFogCoordPointerListIBM( type, stride, pointer, ptrstride );
5018   LEAVE_GL();
5019 }
5020
5021 static void WINAPI wine_glFogCoordd( GLdouble coord ) {
5022   void (*func_glFogCoordd)( GLdouble ) = extension_funcs[EXT_glFogCoordd];
5023   TRACE("(%f)\n", coord );
5024   ENTER_GL();
5025   func_glFogCoordd( coord );
5026   LEAVE_GL();
5027 }
5028
5029 static void WINAPI wine_glFogCoorddEXT( GLdouble coord ) {
5030   void (*func_glFogCoorddEXT)( GLdouble ) = extension_funcs[EXT_glFogCoorddEXT];
5031   TRACE("(%f)\n", coord );
5032   ENTER_GL();
5033   func_glFogCoorddEXT( coord );
5034   LEAVE_GL();
5035 }
5036
5037 static void WINAPI wine_glFogCoorddv( GLdouble* coord ) {
5038   void (*func_glFogCoorddv)( GLdouble* ) = extension_funcs[EXT_glFogCoorddv];
5039   TRACE("(%p)\n", coord );
5040   ENTER_GL();
5041   func_glFogCoorddv( coord );
5042   LEAVE_GL();
5043 }
5044
5045 static void WINAPI wine_glFogCoorddvEXT( GLdouble* coord ) {
5046   void (*func_glFogCoorddvEXT)( GLdouble* ) = extension_funcs[EXT_glFogCoorddvEXT];
5047   TRACE("(%p)\n", coord );
5048   ENTER_GL();
5049   func_glFogCoorddvEXT( coord );
5050   LEAVE_GL();
5051 }
5052
5053 static void WINAPI wine_glFogCoordf( GLfloat coord ) {
5054   void (*func_glFogCoordf)( GLfloat ) = extension_funcs[EXT_glFogCoordf];
5055   TRACE("(%f)\n", coord );
5056   ENTER_GL();
5057   func_glFogCoordf( coord );
5058   LEAVE_GL();
5059 }
5060
5061 static void WINAPI wine_glFogCoordfEXT( GLfloat coord ) {
5062   void (*func_glFogCoordfEXT)( GLfloat ) = extension_funcs[EXT_glFogCoordfEXT];
5063   TRACE("(%f)\n", coord );
5064   ENTER_GL();
5065   func_glFogCoordfEXT( coord );
5066   LEAVE_GL();
5067 }
5068
5069 static void WINAPI wine_glFogCoordfv( GLfloat* coord ) {
5070   void (*func_glFogCoordfv)( GLfloat* ) = extension_funcs[EXT_glFogCoordfv];
5071   TRACE("(%p)\n", coord );
5072   ENTER_GL();
5073   func_glFogCoordfv( coord );
5074   LEAVE_GL();
5075 }
5076
5077 static void WINAPI wine_glFogCoordfvEXT( GLfloat* coord ) {
5078   void (*func_glFogCoordfvEXT)( GLfloat* ) = extension_funcs[EXT_glFogCoordfvEXT];
5079   TRACE("(%p)\n", coord );
5080   ENTER_GL();
5081   func_glFogCoordfvEXT( coord );
5082   LEAVE_GL();
5083 }
5084
5085 static void WINAPI wine_glFogCoordhNV( unsigned short fog ) {
5086   void (*func_glFogCoordhNV)( unsigned short ) = extension_funcs[EXT_glFogCoordhNV];
5087   TRACE("(%d)\n", fog );
5088   ENTER_GL();
5089   func_glFogCoordhNV( fog );
5090   LEAVE_GL();
5091 }
5092
5093 static void WINAPI wine_glFogCoordhvNV( unsigned short* fog ) {
5094   void (*func_glFogCoordhvNV)( unsigned short* ) = extension_funcs[EXT_glFogCoordhvNV];
5095   TRACE("(%p)\n", fog );
5096   ENTER_GL();
5097   func_glFogCoordhvNV( fog );
5098   LEAVE_GL();
5099 }
5100
5101 static void WINAPI wine_glFogFuncSGIS( GLsizei n, GLfloat* points ) {
5102   void (*func_glFogFuncSGIS)( GLsizei, GLfloat* ) = extension_funcs[EXT_glFogFuncSGIS];
5103   TRACE("(%d, %p)\n", n, points );
5104   ENTER_GL();
5105   func_glFogFuncSGIS( n, points );
5106   LEAVE_GL();
5107 }
5108
5109 static void WINAPI wine_glFragmentColorMaterialSGIX( GLenum face, GLenum mode ) {
5110   void (*func_glFragmentColorMaterialSGIX)( GLenum, GLenum ) = extension_funcs[EXT_glFragmentColorMaterialSGIX];
5111   TRACE("(%d, %d)\n", face, mode );
5112   ENTER_GL();
5113   func_glFragmentColorMaterialSGIX( face, mode );
5114   LEAVE_GL();
5115 }
5116
5117 static void WINAPI wine_glFragmentLightModelfSGIX( GLenum pname, GLfloat param ) {
5118   void (*func_glFragmentLightModelfSGIX)( GLenum, GLfloat ) = extension_funcs[EXT_glFragmentLightModelfSGIX];
5119   TRACE("(%d, %f)\n", pname, param );
5120   ENTER_GL();
5121   func_glFragmentLightModelfSGIX( pname, param );
5122   LEAVE_GL();
5123 }
5124
5125 static void WINAPI wine_glFragmentLightModelfvSGIX( GLenum pname, GLfloat* params ) {
5126   void (*func_glFragmentLightModelfvSGIX)( GLenum, GLfloat* ) = extension_funcs[EXT_glFragmentLightModelfvSGIX];
5127   TRACE("(%d, %p)\n", pname, params );
5128   ENTER_GL();
5129   func_glFragmentLightModelfvSGIX( pname, params );
5130   LEAVE_GL();
5131 }
5132
5133 static void WINAPI wine_glFragmentLightModeliSGIX( GLenum pname, GLint param ) {
5134   void (*func_glFragmentLightModeliSGIX)( GLenum, GLint ) = extension_funcs[EXT_glFragmentLightModeliSGIX];
5135   TRACE("(%d, %d)\n", pname, param );
5136   ENTER_GL();
5137   func_glFragmentLightModeliSGIX( pname, param );
5138   LEAVE_GL();
5139 }
5140
5141 static void WINAPI wine_glFragmentLightModelivSGIX( GLenum pname, GLint* params ) {
5142   void (*func_glFragmentLightModelivSGIX)( GLenum, GLint* ) = extension_funcs[EXT_glFragmentLightModelivSGIX];
5143   TRACE("(%d, %p)\n", pname, params );
5144   ENTER_GL();
5145   func_glFragmentLightModelivSGIX( pname, params );
5146   LEAVE_GL();
5147 }
5148
5149 static void WINAPI wine_glFragmentLightfSGIX( GLenum light, GLenum pname, GLfloat param ) {
5150   void (*func_glFragmentLightfSGIX)( GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glFragmentLightfSGIX];
5151   TRACE("(%d, %d, %f)\n", light, pname, param );
5152   ENTER_GL();
5153   func_glFragmentLightfSGIX( light, pname, param );
5154   LEAVE_GL();
5155 }
5156
5157 static void WINAPI wine_glFragmentLightfvSGIX( GLenum light, GLenum pname, GLfloat* params ) {
5158   void (*func_glFragmentLightfvSGIX)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glFragmentLightfvSGIX];
5159   TRACE("(%d, %d, %p)\n", light, pname, params );
5160   ENTER_GL();
5161   func_glFragmentLightfvSGIX( light, pname, params );
5162   LEAVE_GL();
5163 }
5164
5165 static void WINAPI wine_glFragmentLightiSGIX( GLenum light, GLenum pname, GLint param ) {
5166   void (*func_glFragmentLightiSGIX)( GLenum, GLenum, GLint ) = extension_funcs[EXT_glFragmentLightiSGIX];
5167   TRACE("(%d, %d, %d)\n", light, pname, param );
5168   ENTER_GL();
5169   func_glFragmentLightiSGIX( light, pname, param );
5170   LEAVE_GL();
5171 }
5172
5173 static void WINAPI wine_glFragmentLightivSGIX( GLenum light, GLenum pname, GLint* params ) {
5174   void (*func_glFragmentLightivSGIX)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glFragmentLightivSGIX];
5175   TRACE("(%d, %d, %p)\n", light, pname, params );
5176   ENTER_GL();
5177   func_glFragmentLightivSGIX( light, pname, params );
5178   LEAVE_GL();
5179 }
5180
5181 static void WINAPI wine_glFragmentMaterialfSGIX( GLenum face, GLenum pname, GLfloat param ) {
5182   void (*func_glFragmentMaterialfSGIX)( GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glFragmentMaterialfSGIX];
5183   TRACE("(%d, %d, %f)\n", face, pname, param );
5184   ENTER_GL();
5185   func_glFragmentMaterialfSGIX( face, pname, param );
5186   LEAVE_GL();
5187 }
5188
5189 static void WINAPI wine_glFragmentMaterialfvSGIX( GLenum face, GLenum pname, GLfloat* params ) {
5190   void (*func_glFragmentMaterialfvSGIX)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glFragmentMaterialfvSGIX];
5191   TRACE("(%d, %d, %p)\n", face, pname, params );
5192   ENTER_GL();
5193   func_glFragmentMaterialfvSGIX( face, pname, params );
5194   LEAVE_GL();
5195 }
5196
5197 static void WINAPI wine_glFragmentMaterialiSGIX( GLenum face, GLenum pname, GLint param ) {
5198   void (*func_glFragmentMaterialiSGIX)( GLenum, GLenum, GLint ) = extension_funcs[EXT_glFragmentMaterialiSGIX];
5199   TRACE("(%d, %d, %d)\n", face, pname, param );
5200   ENTER_GL();
5201   func_glFragmentMaterialiSGIX( face, pname, param );
5202   LEAVE_GL();
5203 }
5204
5205 static void WINAPI wine_glFragmentMaterialivSGIX( GLenum face, GLenum pname, GLint* params ) {
5206   void (*func_glFragmentMaterialivSGIX)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glFragmentMaterialivSGIX];
5207   TRACE("(%d, %d, %p)\n", face, pname, params );
5208   ENTER_GL();
5209   func_glFragmentMaterialivSGIX( face, pname, params );
5210   LEAVE_GL();
5211 }
5212
5213 static void WINAPI wine_glFrameTerminatorGREMEDY( void ) {
5214   void (*func_glFrameTerminatorGREMEDY)( void ) = extension_funcs[EXT_glFrameTerminatorGREMEDY];
5215   TRACE("()\n");
5216   ENTER_GL();
5217   func_glFrameTerminatorGREMEDY( );
5218   LEAVE_GL();
5219 }
5220
5221 static void WINAPI wine_glFrameZoomSGIX( GLint factor ) {
5222   void (*func_glFrameZoomSGIX)( GLint ) = extension_funcs[EXT_glFrameZoomSGIX];
5223   TRACE("(%d)\n", factor );
5224   ENTER_GL();
5225   func_glFrameZoomSGIX( factor );
5226   LEAVE_GL();
5227 }
5228
5229 static void WINAPI wine_glFramebufferDrawBufferEXT( GLuint framebuffer, GLenum mode ) {
5230   void (*func_glFramebufferDrawBufferEXT)( GLuint, GLenum ) = extension_funcs[EXT_glFramebufferDrawBufferEXT];
5231   TRACE("(%d, %d)\n", framebuffer, mode );
5232   ENTER_GL();
5233   func_glFramebufferDrawBufferEXT( framebuffer, mode );
5234   LEAVE_GL();
5235 }
5236
5237 static void WINAPI wine_glFramebufferDrawBuffersEXT( GLuint framebuffer, GLsizei n, GLenum* bufs ) {
5238   void (*func_glFramebufferDrawBuffersEXT)( GLuint, GLsizei, GLenum* ) = extension_funcs[EXT_glFramebufferDrawBuffersEXT];
5239   TRACE("(%d, %d, %p)\n", framebuffer, n, bufs );
5240   ENTER_GL();
5241   func_glFramebufferDrawBuffersEXT( framebuffer, n, bufs );
5242   LEAVE_GL();
5243 }
5244
5245 static void WINAPI wine_glFramebufferReadBufferEXT( GLuint framebuffer, GLenum mode ) {
5246   void (*func_glFramebufferReadBufferEXT)( GLuint, GLenum ) = extension_funcs[EXT_glFramebufferReadBufferEXT];
5247   TRACE("(%d, %d)\n", framebuffer, mode );
5248   ENTER_GL();
5249   func_glFramebufferReadBufferEXT( framebuffer, mode );
5250   LEAVE_GL();
5251 }
5252
5253 static void WINAPI wine_glFramebufferRenderbuffer( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) {
5254   void (*func_glFramebufferRenderbuffer)( GLenum, GLenum, GLenum, GLuint ) = extension_funcs[EXT_glFramebufferRenderbuffer];
5255   TRACE("(%d, %d, %d, %d)\n", target, attachment, renderbuffertarget, renderbuffer );
5256   ENTER_GL();
5257   func_glFramebufferRenderbuffer( target, attachment, renderbuffertarget, renderbuffer );
5258   LEAVE_GL();
5259 }
5260
5261 static void WINAPI wine_glFramebufferRenderbufferEXT( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) {
5262   void (*func_glFramebufferRenderbufferEXT)( GLenum, GLenum, GLenum, GLuint ) = extension_funcs[EXT_glFramebufferRenderbufferEXT];
5263   TRACE("(%d, %d, %d, %d)\n", target, attachment, renderbuffertarget, renderbuffer );
5264   ENTER_GL();
5265   func_glFramebufferRenderbufferEXT( target, attachment, renderbuffertarget, renderbuffer );
5266   LEAVE_GL();
5267 }
5268
5269 static void WINAPI wine_glFramebufferTexture( GLenum target, GLenum attachment, GLuint texture, GLint level ) {
5270   void (*func_glFramebufferTexture)( GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glFramebufferTexture];
5271   TRACE("(%d, %d, %d, %d)\n", target, attachment, texture, level );
5272   ENTER_GL();
5273   func_glFramebufferTexture( target, attachment, texture, level );
5274   LEAVE_GL();
5275 }
5276
5277 static void WINAPI wine_glFramebufferTexture1D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
5278   void (*func_glFramebufferTexture1D)( GLenum, GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glFramebufferTexture1D];
5279   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level );
5280   ENTER_GL();
5281   func_glFramebufferTexture1D( target, attachment, textarget, texture, level );
5282   LEAVE_GL();
5283 }
5284
5285 static void WINAPI wine_glFramebufferTexture1DEXT( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
5286   void (*func_glFramebufferTexture1DEXT)( GLenum, GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glFramebufferTexture1DEXT];
5287   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level );
5288   ENTER_GL();
5289   func_glFramebufferTexture1DEXT( target, attachment, textarget, texture, level );
5290   LEAVE_GL();
5291 }
5292
5293 static void WINAPI wine_glFramebufferTexture2D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
5294   void (*func_glFramebufferTexture2D)( GLenum, GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glFramebufferTexture2D];
5295   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level );
5296   ENTER_GL();
5297   func_glFramebufferTexture2D( target, attachment, textarget, texture, level );
5298   LEAVE_GL();
5299 }
5300
5301 static void WINAPI wine_glFramebufferTexture2DEXT( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
5302   void (*func_glFramebufferTexture2DEXT)( GLenum, GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glFramebufferTexture2DEXT];
5303   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level );
5304   ENTER_GL();
5305   func_glFramebufferTexture2DEXT( target, attachment, textarget, texture, level );
5306   LEAVE_GL();
5307 }
5308
5309 static void WINAPI wine_glFramebufferTexture3D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset ) {
5310   void (*func_glFramebufferTexture3D)( GLenum, GLenum, GLenum, GLuint, GLint, GLint ) = extension_funcs[EXT_glFramebufferTexture3D];
5311   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level, zoffset );
5312   ENTER_GL();
5313   func_glFramebufferTexture3D( target, attachment, textarget, texture, level, zoffset );
5314   LEAVE_GL();
5315 }
5316
5317 static void WINAPI wine_glFramebufferTexture3DEXT( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset ) {
5318   void (*func_glFramebufferTexture3DEXT)( GLenum, GLenum, GLenum, GLuint, GLint, GLint ) = extension_funcs[EXT_glFramebufferTexture3DEXT];
5319   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level, zoffset );
5320   ENTER_GL();
5321   func_glFramebufferTexture3DEXT( target, attachment, textarget, texture, level, zoffset );
5322   LEAVE_GL();
5323 }
5324
5325 static void WINAPI wine_glFramebufferTextureARB( GLenum target, GLenum attachment, GLuint texture, GLint level ) {
5326   void (*func_glFramebufferTextureARB)( GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glFramebufferTextureARB];
5327   TRACE("(%d, %d, %d, %d)\n", target, attachment, texture, level );
5328   ENTER_GL();
5329   func_glFramebufferTextureARB( target, attachment, texture, level );
5330   LEAVE_GL();
5331 }
5332
5333 static void WINAPI wine_glFramebufferTextureEXT( GLenum target, GLenum attachment, GLuint texture, GLint level ) {
5334   void (*func_glFramebufferTextureEXT)( GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glFramebufferTextureEXT];
5335   TRACE("(%d, %d, %d, %d)\n", target, attachment, texture, level );
5336   ENTER_GL();
5337   func_glFramebufferTextureEXT( target, attachment, texture, level );
5338   LEAVE_GL();
5339 }
5340
5341 static void WINAPI wine_glFramebufferTextureFaceARB( GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face ) {
5342   void (*func_glFramebufferTextureFaceARB)( GLenum, GLenum, GLuint, GLint, GLenum ) = extension_funcs[EXT_glFramebufferTextureFaceARB];
5343   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, face );
5344   ENTER_GL();
5345   func_glFramebufferTextureFaceARB( target, attachment, texture, level, face );
5346   LEAVE_GL();
5347 }
5348
5349 static void WINAPI wine_glFramebufferTextureFaceEXT( GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face ) {
5350   void (*func_glFramebufferTextureFaceEXT)( GLenum, GLenum, GLuint, GLint, GLenum ) = extension_funcs[EXT_glFramebufferTextureFaceEXT];
5351   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, face );
5352   ENTER_GL();
5353   func_glFramebufferTextureFaceEXT( target, attachment, texture, level, face );
5354   LEAVE_GL();
5355 }
5356
5357 static void WINAPI wine_glFramebufferTextureLayer( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) {
5358   void (*func_glFramebufferTextureLayer)( GLenum, GLenum, GLuint, GLint, GLint ) = extension_funcs[EXT_glFramebufferTextureLayer];
5359   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, layer );
5360   ENTER_GL();
5361   func_glFramebufferTextureLayer( target, attachment, texture, level, layer );
5362   LEAVE_GL();
5363 }
5364
5365 static void WINAPI wine_glFramebufferTextureLayerARB( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) {
5366   void (*func_glFramebufferTextureLayerARB)( GLenum, GLenum, GLuint, GLint, GLint ) = extension_funcs[EXT_glFramebufferTextureLayerARB];
5367   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, layer );
5368   ENTER_GL();
5369   func_glFramebufferTextureLayerARB( target, attachment, texture, level, layer );
5370   LEAVE_GL();
5371 }
5372
5373 static void WINAPI wine_glFramebufferTextureLayerEXT( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) {
5374   void (*func_glFramebufferTextureLayerEXT)( GLenum, GLenum, GLuint, GLint, GLint ) = extension_funcs[EXT_glFramebufferTextureLayerEXT];
5375   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, layer );
5376   ENTER_GL();
5377   func_glFramebufferTextureLayerEXT( target, attachment, texture, level, layer );
5378   LEAVE_GL();
5379 }
5380
5381 static void WINAPI wine_glFreeObjectBufferATI( GLuint buffer ) {
5382   void (*func_glFreeObjectBufferATI)( GLuint ) = extension_funcs[EXT_glFreeObjectBufferATI];
5383   TRACE("(%d)\n", buffer );
5384   ENTER_GL();
5385   func_glFreeObjectBufferATI( buffer );
5386   LEAVE_GL();
5387 }
5388
5389 static GLuint WINAPI wine_glGenAsyncMarkersSGIX( GLsizei range ) {
5390   GLuint ret_value;
5391   GLuint (*func_glGenAsyncMarkersSGIX)( GLsizei ) = extension_funcs[EXT_glGenAsyncMarkersSGIX];
5392   TRACE("(%d)\n", range );
5393   ENTER_GL();
5394   ret_value = func_glGenAsyncMarkersSGIX( range );
5395   LEAVE_GL();
5396   return ret_value;
5397 }
5398
5399 static void WINAPI wine_glGenBuffers( GLsizei n, GLuint* buffers ) {
5400   void (*func_glGenBuffers)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenBuffers];
5401   TRACE("(%d, %p)\n", n, buffers );
5402   ENTER_GL();
5403   func_glGenBuffers( n, buffers );
5404   LEAVE_GL();
5405 }
5406
5407 static void WINAPI wine_glGenBuffersARB( GLsizei n, GLuint* buffers ) {
5408   void (*func_glGenBuffersARB)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenBuffersARB];
5409   TRACE("(%d, %p)\n", n, buffers );
5410   ENTER_GL();
5411   func_glGenBuffersARB( n, buffers );
5412   LEAVE_GL();
5413 }
5414
5415 static void WINAPI wine_glGenFencesAPPLE( GLsizei n, GLuint* fences ) {
5416   void (*func_glGenFencesAPPLE)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenFencesAPPLE];
5417   TRACE("(%d, %p)\n", n, fences );
5418   ENTER_GL();
5419   func_glGenFencesAPPLE( n, fences );
5420   LEAVE_GL();
5421 }
5422
5423 static void WINAPI wine_glGenFencesNV( GLsizei n, GLuint* fences ) {
5424   void (*func_glGenFencesNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenFencesNV];
5425   TRACE("(%d, %p)\n", n, fences );
5426   ENTER_GL();
5427   func_glGenFencesNV( n, fences );
5428   LEAVE_GL();
5429 }
5430
5431 static GLuint WINAPI wine_glGenFragmentShadersATI( GLuint range ) {
5432   GLuint ret_value;
5433   GLuint (*func_glGenFragmentShadersATI)( GLuint ) = extension_funcs[EXT_glGenFragmentShadersATI];
5434   TRACE("(%d)\n", range );
5435   ENTER_GL();
5436   ret_value = func_glGenFragmentShadersATI( range );
5437   LEAVE_GL();
5438   return ret_value;
5439 }
5440
5441 static void WINAPI wine_glGenFramebuffers( GLsizei n, GLuint* framebuffers ) {
5442   void (*func_glGenFramebuffers)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenFramebuffers];
5443   TRACE("(%d, %p)\n", n, framebuffers );
5444   ENTER_GL();
5445   func_glGenFramebuffers( n, framebuffers );
5446   LEAVE_GL();
5447 }
5448
5449 static void WINAPI wine_glGenFramebuffersEXT( GLsizei n, GLuint* framebuffers ) {
5450   void (*func_glGenFramebuffersEXT)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenFramebuffersEXT];
5451   TRACE("(%d, %p)\n", n, framebuffers );
5452   ENTER_GL();
5453   func_glGenFramebuffersEXT( n, framebuffers );
5454   LEAVE_GL();
5455 }
5456
5457 static void WINAPI wine_glGenNamesAMD( GLenum identifier, GLuint num, GLuint* names ) {
5458   void (*func_glGenNamesAMD)( GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glGenNamesAMD];
5459   TRACE("(%d, %d, %p)\n", identifier, num, names );
5460   ENTER_GL();
5461   func_glGenNamesAMD( identifier, num, names );
5462   LEAVE_GL();
5463 }
5464
5465 static void WINAPI wine_glGenOcclusionQueriesNV( GLsizei n, GLuint* ids ) {
5466   void (*func_glGenOcclusionQueriesNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenOcclusionQueriesNV];
5467   TRACE("(%d, %p)\n", n, ids );
5468   ENTER_GL();
5469   func_glGenOcclusionQueriesNV( n, ids );
5470   LEAVE_GL();
5471 }
5472
5473 static void WINAPI wine_glGenPerfMonitorsAMD( GLsizei n, GLuint* monitors ) {
5474   void (*func_glGenPerfMonitorsAMD)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenPerfMonitorsAMD];
5475   TRACE("(%d, %p)\n", n, monitors );
5476   ENTER_GL();
5477   func_glGenPerfMonitorsAMD( n, monitors );
5478   LEAVE_GL();
5479 }
5480
5481 static void WINAPI wine_glGenProgramPipelines( GLsizei n, GLuint* pipelines ) {
5482   void (*func_glGenProgramPipelines)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenProgramPipelines];
5483   TRACE("(%d, %p)\n", n, pipelines );
5484   ENTER_GL();
5485   func_glGenProgramPipelines( n, pipelines );
5486   LEAVE_GL();
5487 }
5488
5489 static void WINAPI wine_glGenProgramsARB( GLsizei n, GLuint* programs ) {
5490   void (*func_glGenProgramsARB)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenProgramsARB];
5491   TRACE("(%d, %p)\n", n, programs );
5492   ENTER_GL();
5493   func_glGenProgramsARB( n, programs );
5494   LEAVE_GL();
5495 }
5496
5497 static void WINAPI wine_glGenProgramsNV( GLsizei n, GLuint* programs ) {
5498   void (*func_glGenProgramsNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenProgramsNV];
5499   TRACE("(%d, %p)\n", n, programs );
5500   ENTER_GL();
5501   func_glGenProgramsNV( n, programs );
5502   LEAVE_GL();
5503 }
5504
5505 static void WINAPI wine_glGenQueries( GLsizei n, GLuint* ids ) {
5506   void (*func_glGenQueries)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenQueries];
5507   TRACE("(%d, %p)\n", n, ids );
5508   ENTER_GL();
5509   func_glGenQueries( n, ids );
5510   LEAVE_GL();
5511 }
5512
5513 static void WINAPI wine_glGenQueriesARB( GLsizei n, GLuint* ids ) {
5514   void (*func_glGenQueriesARB)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenQueriesARB];
5515   TRACE("(%d, %p)\n", n, ids );
5516   ENTER_GL();
5517   func_glGenQueriesARB( n, ids );
5518   LEAVE_GL();
5519 }
5520
5521 static void WINAPI wine_glGenRenderbuffers( GLsizei n, GLuint* renderbuffers ) {
5522   void (*func_glGenRenderbuffers)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenRenderbuffers];
5523   TRACE("(%d, %p)\n", n, renderbuffers );
5524   ENTER_GL();
5525   func_glGenRenderbuffers( n, renderbuffers );
5526   LEAVE_GL();
5527 }
5528
5529 static void WINAPI wine_glGenRenderbuffersEXT( GLsizei n, GLuint* renderbuffers ) {
5530   void (*func_glGenRenderbuffersEXT)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenRenderbuffersEXT];
5531   TRACE("(%d, %p)\n", n, renderbuffers );
5532   ENTER_GL();
5533   func_glGenRenderbuffersEXT( n, renderbuffers );
5534   LEAVE_GL();
5535 }
5536
5537 static void WINAPI wine_glGenSamplers( GLsizei count, GLuint* samplers ) {
5538   void (*func_glGenSamplers)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenSamplers];
5539   TRACE("(%d, %p)\n", count, samplers );
5540   ENTER_GL();
5541   func_glGenSamplers( count, samplers );
5542   LEAVE_GL();
5543 }
5544
5545 static GLuint WINAPI wine_glGenSymbolsEXT( GLenum datatype, GLenum storagetype, GLenum range, GLuint components ) {
5546   GLuint ret_value;
5547   GLuint (*func_glGenSymbolsEXT)( GLenum, GLenum, GLenum, GLuint ) = extension_funcs[EXT_glGenSymbolsEXT];
5548   TRACE("(%d, %d, %d, %d)\n", datatype, storagetype, range, components );
5549   ENTER_GL();
5550   ret_value = func_glGenSymbolsEXT( datatype, storagetype, range, components );
5551   LEAVE_GL();
5552   return ret_value;
5553 }
5554
5555 static void WINAPI wine_glGenTexturesEXT( GLsizei n, GLuint* textures ) {
5556   void (*func_glGenTexturesEXT)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenTexturesEXT];
5557   TRACE("(%d, %p)\n", n, textures );
5558   ENTER_GL();
5559   func_glGenTexturesEXT( n, textures );
5560   LEAVE_GL();
5561 }
5562
5563 static void WINAPI wine_glGenTransformFeedbacks( GLsizei n, GLuint* ids ) {
5564   void (*func_glGenTransformFeedbacks)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenTransformFeedbacks];
5565   TRACE("(%d, %p)\n", n, ids );
5566   ENTER_GL();
5567   func_glGenTransformFeedbacks( n, ids );
5568   LEAVE_GL();
5569 }
5570
5571 static void WINAPI wine_glGenTransformFeedbacksNV( GLsizei n, GLuint* ids ) {
5572   void (*func_glGenTransformFeedbacksNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenTransformFeedbacksNV];
5573   TRACE("(%d, %p)\n", n, ids );
5574   ENTER_GL();
5575   func_glGenTransformFeedbacksNV( n, ids );
5576   LEAVE_GL();
5577 }
5578
5579 static void WINAPI wine_glGenVertexArrays( GLsizei n, GLuint* arrays ) {
5580   void (*func_glGenVertexArrays)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenVertexArrays];
5581   TRACE("(%d, %p)\n", n, arrays );
5582   ENTER_GL();
5583   func_glGenVertexArrays( n, arrays );
5584   LEAVE_GL();
5585 }
5586
5587 static void WINAPI wine_glGenVertexArraysAPPLE( GLsizei n, GLuint* arrays ) {
5588   void (*func_glGenVertexArraysAPPLE)( GLsizei, GLuint* ) = extension_funcs[EXT_glGenVertexArraysAPPLE];
5589   TRACE("(%d, %p)\n", n, arrays );
5590   ENTER_GL();
5591   func_glGenVertexArraysAPPLE( n, arrays );
5592   LEAVE_GL();
5593 }
5594
5595 static GLuint WINAPI wine_glGenVertexShadersEXT( GLuint range ) {
5596   GLuint ret_value;
5597   GLuint (*func_glGenVertexShadersEXT)( GLuint ) = extension_funcs[EXT_glGenVertexShadersEXT];
5598   TRACE("(%d)\n", range );
5599   ENTER_GL();
5600   ret_value = func_glGenVertexShadersEXT( range );
5601   LEAVE_GL();
5602   return ret_value;
5603 }
5604
5605 static void WINAPI wine_glGenerateMipmap( GLenum target ) {
5606   void (*func_glGenerateMipmap)( GLenum ) = extension_funcs[EXT_glGenerateMipmap];
5607   TRACE("(%d)\n", target );
5608   ENTER_GL();
5609   func_glGenerateMipmap( target );
5610   LEAVE_GL();
5611 }
5612
5613 static void WINAPI wine_glGenerateMipmapEXT( GLenum target ) {
5614   void (*func_glGenerateMipmapEXT)( GLenum ) = extension_funcs[EXT_glGenerateMipmapEXT];
5615   TRACE("(%d)\n", target );
5616   ENTER_GL();
5617   func_glGenerateMipmapEXT( target );
5618   LEAVE_GL();
5619 }
5620
5621 static void WINAPI wine_glGenerateMultiTexMipmapEXT( GLenum texunit, GLenum target ) {
5622   void (*func_glGenerateMultiTexMipmapEXT)( GLenum, GLenum ) = extension_funcs[EXT_glGenerateMultiTexMipmapEXT];
5623   TRACE("(%d, %d)\n", texunit, target );
5624   ENTER_GL();
5625   func_glGenerateMultiTexMipmapEXT( texunit, target );
5626   LEAVE_GL();
5627 }
5628
5629 static void WINAPI wine_glGenerateTextureMipmapEXT( GLuint texture, GLenum target ) {
5630   void (*func_glGenerateTextureMipmapEXT)( GLuint, GLenum ) = extension_funcs[EXT_glGenerateTextureMipmapEXT];
5631   TRACE("(%d, %d)\n", texture, target );
5632   ENTER_GL();
5633   func_glGenerateTextureMipmapEXT( texture, target );
5634   LEAVE_GL();
5635 }
5636
5637 static void WINAPI wine_glGetActiveAttrib( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLint* size, GLenum* type, char* name ) {
5638   void (*func_glGetActiveAttrib)( GLuint, GLuint, GLsizei, GLsizei*, GLint*, GLenum*, char* ) = extension_funcs[EXT_glGetActiveAttrib];
5639   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
5640   ENTER_GL();
5641   func_glGetActiveAttrib( program, index, bufSize, length, size, type, name );
5642   LEAVE_GL();
5643 }
5644
5645 static void WINAPI wine_glGetActiveAttribARB( unsigned int programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, char* name ) {
5646   void (*func_glGetActiveAttribARB)( unsigned int, GLuint, GLsizei, GLsizei*, GLint*, GLenum*, char* ) = extension_funcs[EXT_glGetActiveAttribARB];
5647   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", programObj, index, maxLength, length, size, type, name );
5648   ENTER_GL();
5649   func_glGetActiveAttribARB( programObj, index, maxLength, length, size, type, name );
5650   LEAVE_GL();
5651 }
5652
5653 static void WINAPI wine_glGetActiveSubroutineName( GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char* name ) {
5654   void (*func_glGetActiveSubroutineName)( GLuint, GLenum, GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetActiveSubroutineName];
5655   TRACE("(%d, %d, %d, %d, %p, %p)\n", program, shadertype, index, bufsize, length, name );
5656   ENTER_GL();
5657   func_glGetActiveSubroutineName( program, shadertype, index, bufsize, length, name );
5658   LEAVE_GL();
5659 }
5660
5661 static void WINAPI wine_glGetActiveSubroutineUniformName( GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char* name ) {
5662   void (*func_glGetActiveSubroutineUniformName)( GLuint, GLenum, GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetActiveSubroutineUniformName];
5663   TRACE("(%d, %d, %d, %d, %p, %p)\n", program, shadertype, index, bufsize, length, name );
5664   ENTER_GL();
5665   func_glGetActiveSubroutineUniformName( program, shadertype, index, bufsize, length, name );
5666   LEAVE_GL();
5667 }
5668
5669 static void WINAPI wine_glGetActiveSubroutineUniformiv( GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint* values ) {
5670   void (*func_glGetActiveSubroutineUniformiv)( GLuint, GLenum, GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetActiveSubroutineUniformiv];
5671   TRACE("(%d, %d, %d, %d, %p)\n", program, shadertype, index, pname, values );
5672   ENTER_GL();
5673   func_glGetActiveSubroutineUniformiv( program, shadertype, index, pname, values );
5674   LEAVE_GL();
5675 }
5676
5677 static void WINAPI wine_glGetActiveUniform( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLint* size, GLenum* type, char* name ) {
5678   void (*func_glGetActiveUniform)( GLuint, GLuint, GLsizei, GLsizei*, GLint*, GLenum*, char* ) = extension_funcs[EXT_glGetActiveUniform];
5679   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
5680   ENTER_GL();
5681   func_glGetActiveUniform( program, index, bufSize, length, size, type, name );
5682   LEAVE_GL();
5683 }
5684
5685 static void WINAPI wine_glGetActiveUniformARB( unsigned int programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, char* name ) {
5686   void (*func_glGetActiveUniformARB)( unsigned int, GLuint, GLsizei, GLsizei*, GLint*, GLenum*, char* ) = extension_funcs[EXT_glGetActiveUniformARB];
5687   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", programObj, index, maxLength, length, size, type, name );
5688   ENTER_GL();
5689   func_glGetActiveUniformARB( programObj, index, maxLength, length, size, type, name );
5690   LEAVE_GL();
5691 }
5692
5693 static void WINAPI wine_glGetActiveUniformBlockName( GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, char* uniformBlockName ) {
5694   void (*func_glGetActiveUniformBlockName)( GLuint, GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetActiveUniformBlockName];
5695   TRACE("(%d, %d, %d, %p, %p)\n", program, uniformBlockIndex, bufSize, length, uniformBlockName );
5696   ENTER_GL();
5697   func_glGetActiveUniformBlockName( program, uniformBlockIndex, bufSize, length, uniformBlockName );
5698   LEAVE_GL();
5699 }
5700
5701 static void WINAPI wine_glGetActiveUniformBlockiv( GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params ) {
5702   void (*func_glGetActiveUniformBlockiv)( GLuint, GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetActiveUniformBlockiv];
5703   TRACE("(%d, %d, %d, %p)\n", program, uniformBlockIndex, pname, params );
5704   ENTER_GL();
5705   func_glGetActiveUniformBlockiv( program, uniformBlockIndex, pname, params );
5706   LEAVE_GL();
5707 }
5708
5709 static void WINAPI wine_glGetActiveUniformName( GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei* length, char* uniformName ) {
5710   void (*func_glGetActiveUniformName)( GLuint, GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetActiveUniformName];
5711   TRACE("(%d, %d, %d, %p, %p)\n", program, uniformIndex, bufSize, length, uniformName );
5712   ENTER_GL();
5713   func_glGetActiveUniformName( program, uniformIndex, bufSize, length, uniformName );
5714   LEAVE_GL();
5715 }
5716
5717 static void WINAPI wine_glGetActiveUniformsiv( GLuint program, GLsizei uniformCount, GLuint* uniformIndices, GLenum pname, GLint* params ) {
5718   void (*func_glGetActiveUniformsiv)( GLuint, GLsizei, GLuint*, GLenum, GLint* ) = extension_funcs[EXT_glGetActiveUniformsiv];
5719   TRACE("(%d, %d, %p, %d, %p)\n", program, uniformCount, uniformIndices, pname, params );
5720   ENTER_GL();
5721   func_glGetActiveUniformsiv( program, uniformCount, uniformIndices, pname, params );
5722   LEAVE_GL();
5723 }
5724
5725 static void WINAPI wine_glGetActiveVaryingNV( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, char* name ) {
5726   void (*func_glGetActiveVaryingNV)( GLuint, GLuint, GLsizei, GLsizei*, GLsizei*, GLenum*, char* ) = extension_funcs[EXT_glGetActiveVaryingNV];
5727   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
5728   ENTER_GL();
5729   func_glGetActiveVaryingNV( program, index, bufSize, length, size, type, name );
5730   LEAVE_GL();
5731 }
5732
5733 static void WINAPI wine_glGetArrayObjectfvATI( GLenum array, GLenum pname, GLfloat* params ) {
5734   void (*func_glGetArrayObjectfvATI)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetArrayObjectfvATI];
5735   TRACE("(%d, %d, %p)\n", array, pname, params );
5736   ENTER_GL();
5737   func_glGetArrayObjectfvATI( array, pname, params );
5738   LEAVE_GL();
5739 }
5740
5741 static void WINAPI wine_glGetArrayObjectivATI( GLenum array, GLenum pname, GLint* params ) {
5742   void (*func_glGetArrayObjectivATI)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetArrayObjectivATI];
5743   TRACE("(%d, %d, %p)\n", array, pname, params );
5744   ENTER_GL();
5745   func_glGetArrayObjectivATI( array, pname, params );
5746   LEAVE_GL();
5747 }
5748
5749 static void WINAPI wine_glGetAttachedObjectsARB( unsigned int containerObj, GLsizei maxCount, GLsizei* count, unsigned int* obj ) {
5750   void (*func_glGetAttachedObjectsARB)( unsigned int, GLsizei, GLsizei*, unsigned int* ) = extension_funcs[EXT_glGetAttachedObjectsARB];
5751   TRACE("(%d, %d, %p, %p)\n", containerObj, maxCount, count, obj );
5752   ENTER_GL();
5753   func_glGetAttachedObjectsARB( containerObj, maxCount, count, obj );
5754   LEAVE_GL();
5755 }
5756
5757 static void WINAPI wine_glGetAttachedShaders( GLuint program, GLsizei maxCount, GLsizei* count, GLuint* obj ) {
5758   void (*func_glGetAttachedShaders)( GLuint, GLsizei, GLsizei*, GLuint* ) = extension_funcs[EXT_glGetAttachedShaders];
5759   TRACE("(%d, %d, %p, %p)\n", program, maxCount, count, obj );
5760   ENTER_GL();
5761   func_glGetAttachedShaders( program, maxCount, count, obj );
5762   LEAVE_GL();
5763 }
5764
5765 static GLint WINAPI wine_glGetAttribLocation( GLuint program, char* name ) {
5766   GLint ret_value;
5767   GLint (*func_glGetAttribLocation)( GLuint, char* ) = extension_funcs[EXT_glGetAttribLocation];
5768   TRACE("(%d, %p)\n", program, name );
5769   ENTER_GL();
5770   ret_value = func_glGetAttribLocation( program, name );
5771   LEAVE_GL();
5772   return ret_value;
5773 }
5774
5775 static GLint WINAPI wine_glGetAttribLocationARB( unsigned int programObj, char* name ) {
5776   GLint ret_value;
5777   GLint (*func_glGetAttribLocationARB)( unsigned int, char* ) = extension_funcs[EXT_glGetAttribLocationARB];
5778   TRACE("(%d, %p)\n", programObj, name );
5779   ENTER_GL();
5780   ret_value = func_glGetAttribLocationARB( programObj, name );
5781   LEAVE_GL();
5782   return ret_value;
5783 }
5784
5785 static void WINAPI wine_glGetBooleanIndexedvEXT( GLenum target, GLuint index, GLboolean* data ) {
5786   void (*func_glGetBooleanIndexedvEXT)( GLenum, GLuint, GLboolean* ) = extension_funcs[EXT_glGetBooleanIndexedvEXT];
5787   TRACE("(%d, %d, %p)\n", target, index, data );
5788   ENTER_GL();
5789   func_glGetBooleanIndexedvEXT( target, index, data );
5790   LEAVE_GL();
5791 }
5792
5793 static void WINAPI wine_glGetBooleani_v( GLenum target, GLuint index, GLboolean* data ) {
5794   void (*func_glGetBooleani_v)( GLenum, GLuint, GLboolean* ) = extension_funcs[EXT_glGetBooleani_v];
5795   TRACE("(%d, %d, %p)\n", target, index, data );
5796   ENTER_GL();
5797   func_glGetBooleani_v( target, index, data );
5798   LEAVE_GL();
5799 }
5800
5801 static void WINAPI wine_glGetBufferParameteri64v( GLenum target, GLenum pname, INT64* params ) {
5802   void (*func_glGetBufferParameteri64v)( GLenum, GLenum, INT64* ) = extension_funcs[EXT_glGetBufferParameteri64v];
5803   TRACE("(%d, %d, %p)\n", target, pname, params );
5804   ENTER_GL();
5805   func_glGetBufferParameteri64v( target, pname, params );
5806   LEAVE_GL();
5807 }
5808
5809 static void WINAPI wine_glGetBufferParameteriv( GLenum target, GLenum pname, GLint* params ) {
5810   void (*func_glGetBufferParameteriv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetBufferParameteriv];
5811   TRACE("(%d, %d, %p)\n", target, pname, params );
5812   ENTER_GL();
5813   func_glGetBufferParameteriv( target, pname, params );
5814   LEAVE_GL();
5815 }
5816
5817 static void WINAPI wine_glGetBufferParameterivARB( GLenum target, GLenum pname, GLint* params ) {
5818   void (*func_glGetBufferParameterivARB)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetBufferParameterivARB];
5819   TRACE("(%d, %d, %p)\n", target, pname, params );
5820   ENTER_GL();
5821   func_glGetBufferParameterivARB( target, pname, params );
5822   LEAVE_GL();
5823 }
5824
5825 static void WINAPI wine_glGetBufferParameterui64vNV( GLenum target, GLenum pname, UINT64* params ) {
5826   void (*func_glGetBufferParameterui64vNV)( GLenum, GLenum, UINT64* ) = extension_funcs[EXT_glGetBufferParameterui64vNV];
5827   TRACE("(%d, %d, %p)\n", target, pname, params );
5828   ENTER_GL();
5829   func_glGetBufferParameterui64vNV( target, pname, params );
5830   LEAVE_GL();
5831 }
5832
5833 static void WINAPI wine_glGetBufferPointerv( GLenum target, GLenum pname, GLvoid** params ) {
5834   void (*func_glGetBufferPointerv)( GLenum, GLenum, GLvoid** ) = extension_funcs[EXT_glGetBufferPointerv];
5835   TRACE("(%d, %d, %p)\n", target, pname, params );
5836   ENTER_GL();
5837   func_glGetBufferPointerv( target, pname, params );
5838   LEAVE_GL();
5839 }
5840
5841 static void WINAPI wine_glGetBufferPointervARB( GLenum target, GLenum pname, GLvoid** params ) {
5842   void (*func_glGetBufferPointervARB)( GLenum, GLenum, GLvoid** ) = extension_funcs[EXT_glGetBufferPointervARB];
5843   TRACE("(%d, %d, %p)\n", target, pname, params );
5844   ENTER_GL();
5845   func_glGetBufferPointervARB( target, pname, params );
5846   LEAVE_GL();
5847 }
5848
5849 static void WINAPI wine_glGetBufferSubData( GLenum target, INT_PTR offset, INT_PTR size, GLvoid* data ) {
5850   void (*func_glGetBufferSubData)( GLenum, INT_PTR, INT_PTR, GLvoid* ) = extension_funcs[EXT_glGetBufferSubData];
5851   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
5852   ENTER_GL();
5853   func_glGetBufferSubData( target, offset, size, data );
5854   LEAVE_GL();
5855 }
5856
5857 static void WINAPI wine_glGetBufferSubDataARB( GLenum target, INT_PTR offset, INT_PTR size, GLvoid* data ) {
5858   void (*func_glGetBufferSubDataARB)( GLenum, INT_PTR, INT_PTR, GLvoid* ) = extension_funcs[EXT_glGetBufferSubDataARB];
5859   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
5860   ENTER_GL();
5861   func_glGetBufferSubDataARB( target, offset, size, data );
5862   LEAVE_GL();
5863 }
5864
5865 static void WINAPI wine_glGetColorTable( GLenum target, GLenum format, GLenum type, GLvoid* table ) {
5866   void (*func_glGetColorTable)( GLenum, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetColorTable];
5867   TRACE("(%d, %d, %d, %p)\n", target, format, type, table );
5868   ENTER_GL();
5869   func_glGetColorTable( target, format, type, table );
5870   LEAVE_GL();
5871 }
5872
5873 static void WINAPI wine_glGetColorTableEXT( GLenum target, GLenum format, GLenum type, GLvoid* data ) {
5874   void (*func_glGetColorTableEXT)( GLenum, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetColorTableEXT];
5875   TRACE("(%d, %d, %d, %p)\n", target, format, type, data );
5876   ENTER_GL();
5877   func_glGetColorTableEXT( target, format, type, data );
5878   LEAVE_GL();
5879 }
5880
5881 static void WINAPI wine_glGetColorTableParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
5882   void (*func_glGetColorTableParameterfv)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetColorTableParameterfv];
5883   TRACE("(%d, %d, %p)\n", target, pname, params );
5884   ENTER_GL();
5885   func_glGetColorTableParameterfv( target, pname, params );
5886   LEAVE_GL();
5887 }
5888
5889 static void WINAPI wine_glGetColorTableParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
5890   void (*func_glGetColorTableParameterfvEXT)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetColorTableParameterfvEXT];
5891   TRACE("(%d, %d, %p)\n", target, pname, params );
5892   ENTER_GL();
5893   func_glGetColorTableParameterfvEXT( target, pname, params );
5894   LEAVE_GL();
5895 }
5896
5897 static void WINAPI wine_glGetColorTableParameterfvSGI( GLenum target, GLenum pname, GLfloat* params ) {
5898   void (*func_glGetColorTableParameterfvSGI)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetColorTableParameterfvSGI];
5899   TRACE("(%d, %d, %p)\n", target, pname, params );
5900   ENTER_GL();
5901   func_glGetColorTableParameterfvSGI( target, pname, params );
5902   LEAVE_GL();
5903 }
5904
5905 static void WINAPI wine_glGetColorTableParameteriv( GLenum target, GLenum pname, GLint* params ) {
5906   void (*func_glGetColorTableParameteriv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetColorTableParameteriv];
5907   TRACE("(%d, %d, %p)\n", target, pname, params );
5908   ENTER_GL();
5909   func_glGetColorTableParameteriv( target, pname, params );
5910   LEAVE_GL();
5911 }
5912
5913 static void WINAPI wine_glGetColorTableParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
5914   void (*func_glGetColorTableParameterivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetColorTableParameterivEXT];
5915   TRACE("(%d, %d, %p)\n", target, pname, params );
5916   ENTER_GL();
5917   func_glGetColorTableParameterivEXT( target, pname, params );
5918   LEAVE_GL();
5919 }
5920
5921 static void WINAPI wine_glGetColorTableParameterivSGI( GLenum target, GLenum pname, GLint* params ) {
5922   void (*func_glGetColorTableParameterivSGI)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetColorTableParameterivSGI];
5923   TRACE("(%d, %d, %p)\n", target, pname, params );
5924   ENTER_GL();
5925   func_glGetColorTableParameterivSGI( target, pname, params );
5926   LEAVE_GL();
5927 }
5928
5929 static void WINAPI wine_glGetColorTableSGI( GLenum target, GLenum format, GLenum type, GLvoid* table ) {
5930   void (*func_glGetColorTableSGI)( GLenum, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetColorTableSGI];
5931   TRACE("(%d, %d, %d, %p)\n", target, format, type, table );
5932   ENTER_GL();
5933   func_glGetColorTableSGI( target, format, type, table );
5934   LEAVE_GL();
5935 }
5936
5937 static void WINAPI wine_glGetCombinerInputParameterfvNV( GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat* params ) {
5938   void (*func_glGetCombinerInputParameterfvNV)( GLenum, GLenum, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetCombinerInputParameterfvNV];
5939   TRACE("(%d, %d, %d, %d, %p)\n", stage, portion, variable, pname, params );
5940   ENTER_GL();
5941   func_glGetCombinerInputParameterfvNV( stage, portion, variable, pname, params );
5942   LEAVE_GL();
5943 }
5944
5945 static void WINAPI wine_glGetCombinerInputParameterivNV( GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint* params ) {
5946   void (*func_glGetCombinerInputParameterivNV)( GLenum, GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetCombinerInputParameterivNV];
5947   TRACE("(%d, %d, %d, %d, %p)\n", stage, portion, variable, pname, params );
5948   ENTER_GL();
5949   func_glGetCombinerInputParameterivNV( stage, portion, variable, pname, params );
5950   LEAVE_GL();
5951 }
5952
5953 static void WINAPI wine_glGetCombinerOutputParameterfvNV( GLenum stage, GLenum portion, GLenum pname, GLfloat* params ) {
5954   void (*func_glGetCombinerOutputParameterfvNV)( GLenum, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetCombinerOutputParameterfvNV];
5955   TRACE("(%d, %d, %d, %p)\n", stage, portion, pname, params );
5956   ENTER_GL();
5957   func_glGetCombinerOutputParameterfvNV( stage, portion, pname, params );
5958   LEAVE_GL();
5959 }
5960
5961 static void WINAPI wine_glGetCombinerOutputParameterivNV( GLenum stage, GLenum portion, GLenum pname, GLint* params ) {
5962   void (*func_glGetCombinerOutputParameterivNV)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetCombinerOutputParameterivNV];
5963   TRACE("(%d, %d, %d, %p)\n", stage, portion, pname, params );
5964   ENTER_GL();
5965   func_glGetCombinerOutputParameterivNV( stage, portion, pname, params );
5966   LEAVE_GL();
5967 }
5968
5969 static void WINAPI wine_glGetCombinerStageParameterfvNV( GLenum stage, GLenum pname, GLfloat* params ) {
5970   void (*func_glGetCombinerStageParameterfvNV)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetCombinerStageParameterfvNV];
5971   TRACE("(%d, %d, %p)\n", stage, pname, params );
5972   ENTER_GL();
5973   func_glGetCombinerStageParameterfvNV( stage, pname, params );
5974   LEAVE_GL();
5975 }
5976
5977 static void WINAPI wine_glGetCompressedMultiTexImageEXT( GLenum texunit, GLenum target, GLint lod, GLvoid* img ) {
5978   void (*func_glGetCompressedMultiTexImageEXT)( GLenum, GLenum, GLint, GLvoid* ) = extension_funcs[EXT_glGetCompressedMultiTexImageEXT];
5979   TRACE("(%d, %d, %d, %p)\n", texunit, target, lod, img );
5980   ENTER_GL();
5981   func_glGetCompressedMultiTexImageEXT( texunit, target, lod, img );
5982   LEAVE_GL();
5983 }
5984
5985 static void WINAPI wine_glGetCompressedTexImage( GLenum target, GLint level, GLvoid* img ) {
5986   void (*func_glGetCompressedTexImage)( GLenum, GLint, GLvoid* ) = extension_funcs[EXT_glGetCompressedTexImage];
5987   TRACE("(%d, %d, %p)\n", target, level, img );
5988   ENTER_GL();
5989   func_glGetCompressedTexImage( target, level, img );
5990   LEAVE_GL();
5991 }
5992
5993 static void WINAPI wine_glGetCompressedTexImageARB( GLenum target, GLint level, GLvoid* img ) {
5994   void (*func_glGetCompressedTexImageARB)( GLenum, GLint, GLvoid* ) = extension_funcs[EXT_glGetCompressedTexImageARB];
5995   TRACE("(%d, %d, %p)\n", target, level, img );
5996   ENTER_GL();
5997   func_glGetCompressedTexImageARB( target, level, img );
5998   LEAVE_GL();
5999 }
6000
6001 static void WINAPI wine_glGetCompressedTextureImageEXT( GLuint texture, GLenum target, GLint lod, GLvoid* img ) {
6002   void (*func_glGetCompressedTextureImageEXT)( GLuint, GLenum, GLint, GLvoid* ) = extension_funcs[EXT_glGetCompressedTextureImageEXT];
6003   TRACE("(%d, %d, %d, %p)\n", texture, target, lod, img );
6004   ENTER_GL();
6005   func_glGetCompressedTextureImageEXT( texture, target, lod, img );
6006   LEAVE_GL();
6007 }
6008
6009 static void WINAPI wine_glGetConvolutionFilter( GLenum target, GLenum format, GLenum type, GLvoid* image ) {
6010   void (*func_glGetConvolutionFilter)( GLenum, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetConvolutionFilter];
6011   TRACE("(%d, %d, %d, %p)\n", target, format, type, image );
6012   ENTER_GL();
6013   func_glGetConvolutionFilter( target, format, type, image );
6014   LEAVE_GL();
6015 }
6016
6017 static void WINAPI wine_glGetConvolutionFilterEXT( GLenum target, GLenum format, GLenum type, GLvoid* image ) {
6018   void (*func_glGetConvolutionFilterEXT)( GLenum, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetConvolutionFilterEXT];
6019   TRACE("(%d, %d, %d, %p)\n", target, format, type, image );
6020   ENTER_GL();
6021   func_glGetConvolutionFilterEXT( target, format, type, image );
6022   LEAVE_GL();
6023 }
6024
6025 static void WINAPI wine_glGetConvolutionParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
6026   void (*func_glGetConvolutionParameterfv)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetConvolutionParameterfv];
6027   TRACE("(%d, %d, %p)\n", target, pname, params );
6028   ENTER_GL();
6029   func_glGetConvolutionParameterfv( target, pname, params );
6030   LEAVE_GL();
6031 }
6032
6033 static void WINAPI wine_glGetConvolutionParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
6034   void (*func_glGetConvolutionParameterfvEXT)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetConvolutionParameterfvEXT];
6035   TRACE("(%d, %d, %p)\n", target, pname, params );
6036   ENTER_GL();
6037   func_glGetConvolutionParameterfvEXT( target, pname, params );
6038   LEAVE_GL();
6039 }
6040
6041 static void WINAPI wine_glGetConvolutionParameteriv( GLenum target, GLenum pname, GLint* params ) {
6042   void (*func_glGetConvolutionParameteriv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetConvolutionParameteriv];
6043   TRACE("(%d, %d, %p)\n", target, pname, params );
6044   ENTER_GL();
6045   func_glGetConvolutionParameteriv( target, pname, params );
6046   LEAVE_GL();
6047 }
6048
6049 static void WINAPI wine_glGetConvolutionParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
6050   void (*func_glGetConvolutionParameterivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetConvolutionParameterivEXT];
6051   TRACE("(%d, %d, %p)\n", target, pname, params );
6052   ENTER_GL();
6053   func_glGetConvolutionParameterivEXT( target, pname, params );
6054   LEAVE_GL();
6055 }
6056
6057 static GLuint WINAPI wine_glGetDebugMessageLogAMD( GLuint count, GLsizei bufsize, GLenum* categories, GLuint* severities, GLuint* ids, GLsizei* lengths, char* message ) {
6058   GLuint ret_value;
6059   GLuint (*func_glGetDebugMessageLogAMD)( GLuint, GLsizei, GLenum*, GLuint*, GLuint*, GLsizei*, char* ) = extension_funcs[EXT_glGetDebugMessageLogAMD];
6060   TRACE("(%d, %d, %p, %p, %p, %p, %p)\n", count, bufsize, categories, severities, ids, lengths, message );
6061   ENTER_GL();
6062   ret_value = func_glGetDebugMessageLogAMD( count, bufsize, categories, severities, ids, lengths, message );
6063   LEAVE_GL();
6064   return ret_value;
6065 }
6066
6067 static GLuint WINAPI wine_glGetDebugMessageLogARB( GLuint count, GLsizei bufsize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, char* messageLog ) {
6068   GLuint ret_value;
6069   GLuint (*func_glGetDebugMessageLogARB)( GLuint, GLsizei, GLenum*, GLenum*, GLuint*, GLenum*, GLsizei*, char* ) = extension_funcs[EXT_glGetDebugMessageLogARB];
6070   TRACE("(%d, %d, %p, %p, %p, %p, %p, %p)\n", count, bufsize, sources, types, ids, severities, lengths, messageLog );
6071   ENTER_GL();
6072   ret_value = func_glGetDebugMessageLogARB( count, bufsize, sources, types, ids, severities, lengths, messageLog );
6073   LEAVE_GL();
6074   return ret_value;
6075 }
6076
6077 static void WINAPI wine_glGetDetailTexFuncSGIS( GLenum target, GLfloat* points ) {
6078   void (*func_glGetDetailTexFuncSGIS)( GLenum, GLfloat* ) = extension_funcs[EXT_glGetDetailTexFuncSGIS];
6079   TRACE("(%d, %p)\n", target, points );
6080   ENTER_GL();
6081   func_glGetDetailTexFuncSGIS( target, points );
6082   LEAVE_GL();
6083 }
6084
6085 static void WINAPI wine_glGetDoubleIndexedvEXT( GLenum target, GLuint index, GLdouble* data ) {
6086   void (*func_glGetDoubleIndexedvEXT)( GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glGetDoubleIndexedvEXT];
6087   TRACE("(%d, %d, %p)\n", target, index, data );
6088   ENTER_GL();
6089   func_glGetDoubleIndexedvEXT( target, index, data );
6090   LEAVE_GL();
6091 }
6092
6093 static void WINAPI wine_glGetDoublei_v( GLenum target, GLuint index, GLdouble* data ) {
6094   void (*func_glGetDoublei_v)( GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glGetDoublei_v];
6095   TRACE("(%d, %d, %p)\n", target, index, data );
6096   ENTER_GL();
6097   func_glGetDoublei_v( target, index, data );
6098   LEAVE_GL();
6099 }
6100
6101 static void WINAPI wine_glGetFenceivNV( GLuint fence, GLenum pname, GLint* params ) {
6102   void (*func_glGetFenceivNV)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetFenceivNV];
6103   TRACE("(%d, %d, %p)\n", fence, pname, params );
6104   ENTER_GL();
6105   func_glGetFenceivNV( fence, pname, params );
6106   LEAVE_GL();
6107 }
6108
6109 static void WINAPI wine_glGetFinalCombinerInputParameterfvNV( GLenum variable, GLenum pname, GLfloat* params ) {
6110   void (*func_glGetFinalCombinerInputParameterfvNV)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetFinalCombinerInputParameterfvNV];
6111   TRACE("(%d, %d, %p)\n", variable, pname, params );
6112   ENTER_GL();
6113   func_glGetFinalCombinerInputParameterfvNV( variable, pname, params );
6114   LEAVE_GL();
6115 }
6116
6117 static void WINAPI wine_glGetFinalCombinerInputParameterivNV( GLenum variable, GLenum pname, GLint* params ) {
6118   void (*func_glGetFinalCombinerInputParameterivNV)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetFinalCombinerInputParameterivNV];
6119   TRACE("(%d, %d, %p)\n", variable, pname, params );
6120   ENTER_GL();
6121   func_glGetFinalCombinerInputParameterivNV( variable, pname, params );
6122   LEAVE_GL();
6123 }
6124
6125 static void WINAPI wine_glGetFloatIndexedvEXT( GLenum target, GLuint index, GLfloat* data ) {
6126   void (*func_glGetFloatIndexedvEXT)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glGetFloatIndexedvEXT];
6127   TRACE("(%d, %d, %p)\n", target, index, data );
6128   ENTER_GL();
6129   func_glGetFloatIndexedvEXT( target, index, data );
6130   LEAVE_GL();
6131 }
6132
6133 static void WINAPI wine_glGetFloati_v( GLenum target, GLuint index, GLfloat* data ) {
6134   void (*func_glGetFloati_v)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glGetFloati_v];
6135   TRACE("(%d, %d, %p)\n", target, index, data );
6136   ENTER_GL();
6137   func_glGetFloati_v( target, index, data );
6138   LEAVE_GL();
6139 }
6140
6141 static void WINAPI wine_glGetFogFuncSGIS( GLfloat* points ) {
6142   void (*func_glGetFogFuncSGIS)( GLfloat* ) = extension_funcs[EXT_glGetFogFuncSGIS];
6143   TRACE("(%p)\n", points );
6144   ENTER_GL();
6145   func_glGetFogFuncSGIS( points );
6146   LEAVE_GL();
6147 }
6148
6149 static GLint WINAPI wine_glGetFragDataIndex( GLuint program, char* name ) {
6150   GLint ret_value;
6151   GLint (*func_glGetFragDataIndex)( GLuint, char* ) = extension_funcs[EXT_glGetFragDataIndex];
6152   TRACE("(%d, %p)\n", program, name );
6153   ENTER_GL();
6154   ret_value = func_glGetFragDataIndex( program, name );
6155   LEAVE_GL();
6156   return ret_value;
6157 }
6158
6159 static GLint WINAPI wine_glGetFragDataLocation( GLuint program, char* name ) {
6160   GLint ret_value;
6161   GLint (*func_glGetFragDataLocation)( GLuint, char* ) = extension_funcs[EXT_glGetFragDataLocation];
6162   TRACE("(%d, %p)\n", program, name );
6163   ENTER_GL();
6164   ret_value = func_glGetFragDataLocation( program, name );
6165   LEAVE_GL();
6166   return ret_value;
6167 }
6168
6169 static GLint WINAPI wine_glGetFragDataLocationEXT( GLuint program, char* name ) {
6170   GLint ret_value;
6171   GLint (*func_glGetFragDataLocationEXT)( GLuint, char* ) = extension_funcs[EXT_glGetFragDataLocationEXT];
6172   TRACE("(%d, %p)\n", program, name );
6173   ENTER_GL();
6174   ret_value = func_glGetFragDataLocationEXT( program, name );
6175   LEAVE_GL();
6176   return ret_value;
6177 }
6178
6179 static void WINAPI wine_glGetFragmentLightfvSGIX( GLenum light, GLenum pname, GLfloat* params ) {
6180   void (*func_glGetFragmentLightfvSGIX)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetFragmentLightfvSGIX];
6181   TRACE("(%d, %d, %p)\n", light, pname, params );
6182   ENTER_GL();
6183   func_glGetFragmentLightfvSGIX( light, pname, params );
6184   LEAVE_GL();
6185 }
6186
6187 static void WINAPI wine_glGetFragmentLightivSGIX( GLenum light, GLenum pname, GLint* params ) {
6188   void (*func_glGetFragmentLightivSGIX)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetFragmentLightivSGIX];
6189   TRACE("(%d, %d, %p)\n", light, pname, params );
6190   ENTER_GL();
6191   func_glGetFragmentLightivSGIX( light, pname, params );
6192   LEAVE_GL();
6193 }
6194
6195 static void WINAPI wine_glGetFragmentMaterialfvSGIX( GLenum face, GLenum pname, GLfloat* params ) {
6196   void (*func_glGetFragmentMaterialfvSGIX)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetFragmentMaterialfvSGIX];
6197   TRACE("(%d, %d, %p)\n", face, pname, params );
6198   ENTER_GL();
6199   func_glGetFragmentMaterialfvSGIX( face, pname, params );
6200   LEAVE_GL();
6201 }
6202
6203 static void WINAPI wine_glGetFragmentMaterialivSGIX( GLenum face, GLenum pname, GLint* params ) {
6204   void (*func_glGetFragmentMaterialivSGIX)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetFragmentMaterialivSGIX];
6205   TRACE("(%d, %d, %p)\n", face, pname, params );
6206   ENTER_GL();
6207   func_glGetFragmentMaterialivSGIX( face, pname, params );
6208   LEAVE_GL();
6209 }
6210
6211 static void WINAPI wine_glGetFramebufferAttachmentParameteriv( GLenum target, GLenum attachment, GLenum pname, GLint* params ) {
6212   void (*func_glGetFramebufferAttachmentParameteriv)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetFramebufferAttachmentParameteriv];
6213   TRACE("(%d, %d, %d, %p)\n", target, attachment, pname, params );
6214   ENTER_GL();
6215   func_glGetFramebufferAttachmentParameteriv( target, attachment, pname, params );
6216   LEAVE_GL();
6217 }
6218
6219 static void WINAPI wine_glGetFramebufferAttachmentParameterivEXT( GLenum target, GLenum attachment, GLenum pname, GLint* params ) {
6220   void (*func_glGetFramebufferAttachmentParameterivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetFramebufferAttachmentParameterivEXT];
6221   TRACE("(%d, %d, %d, %p)\n", target, attachment, pname, params );
6222   ENTER_GL();
6223   func_glGetFramebufferAttachmentParameterivEXT( target, attachment, pname, params );
6224   LEAVE_GL();
6225 }
6226
6227 static void WINAPI wine_glGetFramebufferParameterivEXT( GLuint framebuffer, GLenum pname, GLint* params ) {
6228   void (*func_glGetFramebufferParameterivEXT)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetFramebufferParameterivEXT];
6229   TRACE("(%d, %d, %p)\n", framebuffer, pname, params );
6230   ENTER_GL();
6231   func_glGetFramebufferParameterivEXT( framebuffer, pname, params );
6232   LEAVE_GL();
6233 }
6234
6235 static GLenum WINAPI wine_glGetGraphicsResetStatusARB( void ) {
6236   GLenum ret_value;
6237   GLenum (*func_glGetGraphicsResetStatusARB)( void ) = extension_funcs[EXT_glGetGraphicsResetStatusARB];
6238   TRACE("()\n");
6239   ENTER_GL();
6240   ret_value = func_glGetGraphicsResetStatusARB( );
6241   LEAVE_GL();
6242   return ret_value;
6243 }
6244
6245 static unsigned int WINAPI wine_glGetHandleARB( GLenum pname ) {
6246   unsigned int ret_value;
6247   unsigned int (*func_glGetHandleARB)( GLenum ) = extension_funcs[EXT_glGetHandleARB];
6248   TRACE("(%d)\n", pname );
6249   ENTER_GL();
6250   ret_value = func_glGetHandleARB( pname );
6251   LEAVE_GL();
6252   return ret_value;
6253 }
6254
6255 static void WINAPI wine_glGetHistogram( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid* values ) {
6256   void (*func_glGetHistogram)( GLenum, GLboolean, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetHistogram];
6257   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
6258   ENTER_GL();
6259   func_glGetHistogram( target, reset, format, type, values );
6260   LEAVE_GL();
6261 }
6262
6263 static void WINAPI wine_glGetHistogramEXT( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid* values ) {
6264   void (*func_glGetHistogramEXT)( GLenum, GLboolean, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetHistogramEXT];
6265   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
6266   ENTER_GL();
6267   func_glGetHistogramEXT( target, reset, format, type, values );
6268   LEAVE_GL();
6269 }
6270
6271 static void WINAPI wine_glGetHistogramParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
6272   void (*func_glGetHistogramParameterfv)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetHistogramParameterfv];
6273   TRACE("(%d, %d, %p)\n", target, pname, params );
6274   ENTER_GL();
6275   func_glGetHistogramParameterfv( target, pname, params );
6276   LEAVE_GL();
6277 }
6278
6279 static void WINAPI wine_glGetHistogramParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
6280   void (*func_glGetHistogramParameterfvEXT)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetHistogramParameterfvEXT];
6281   TRACE("(%d, %d, %p)\n", target, pname, params );
6282   ENTER_GL();
6283   func_glGetHistogramParameterfvEXT( target, pname, params );
6284   LEAVE_GL();
6285 }
6286
6287 static void WINAPI wine_glGetHistogramParameteriv( GLenum target, GLenum pname, GLint* params ) {
6288   void (*func_glGetHistogramParameteriv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetHistogramParameteriv];
6289   TRACE("(%d, %d, %p)\n", target, pname, params );
6290   ENTER_GL();
6291   func_glGetHistogramParameteriv( target, pname, params );
6292   LEAVE_GL();
6293 }
6294
6295 static void WINAPI wine_glGetHistogramParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
6296   void (*func_glGetHistogramParameterivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetHistogramParameterivEXT];
6297   TRACE("(%d, %d, %p)\n", target, pname, params );
6298   ENTER_GL();
6299   func_glGetHistogramParameterivEXT( target, pname, params );
6300   LEAVE_GL();
6301 }
6302
6303 static void WINAPI wine_glGetImageTransformParameterfvHP( GLenum target, GLenum pname, GLfloat* params ) {
6304   void (*func_glGetImageTransformParameterfvHP)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetImageTransformParameterfvHP];
6305   TRACE("(%d, %d, %p)\n", target, pname, params );
6306   ENTER_GL();
6307   func_glGetImageTransformParameterfvHP( target, pname, params );
6308   LEAVE_GL();
6309 }
6310
6311 static void WINAPI wine_glGetImageTransformParameterivHP( GLenum target, GLenum pname, GLint* params ) {
6312   void (*func_glGetImageTransformParameterivHP)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetImageTransformParameterivHP];
6313   TRACE("(%d, %d, %p)\n", target, pname, params );
6314   ENTER_GL();
6315   func_glGetImageTransformParameterivHP( target, pname, params );
6316   LEAVE_GL();
6317 }
6318
6319 static void WINAPI wine_glGetInfoLogARB( unsigned int obj, GLsizei maxLength, GLsizei* length, char* infoLog ) {
6320   void (*func_glGetInfoLogARB)( unsigned int, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetInfoLogARB];
6321   TRACE("(%d, %d, %p, %p)\n", obj, maxLength, length, infoLog );
6322   ENTER_GL();
6323   func_glGetInfoLogARB( obj, maxLength, length, infoLog );
6324   LEAVE_GL();
6325 }
6326
6327 static GLint WINAPI wine_glGetInstrumentsSGIX( void ) {
6328   GLint ret_value;
6329   GLint (*func_glGetInstrumentsSGIX)( void ) = extension_funcs[EXT_glGetInstrumentsSGIX];
6330   TRACE("()\n");
6331   ENTER_GL();
6332   ret_value = func_glGetInstrumentsSGIX( );
6333   LEAVE_GL();
6334   return ret_value;
6335 }
6336
6337 static void WINAPI wine_glGetInteger64i_v( GLenum target, GLuint index, INT64* data ) {
6338   void (*func_glGetInteger64i_v)( GLenum, GLuint, INT64* ) = extension_funcs[EXT_glGetInteger64i_v];
6339   TRACE("(%d, %d, %p)\n", target, index, data );
6340   ENTER_GL();
6341   func_glGetInteger64i_v( target, index, data );
6342   LEAVE_GL();
6343 }
6344
6345 static void WINAPI wine_glGetInteger64v( GLenum pname, INT64* params ) {
6346   void (*func_glGetInteger64v)( GLenum, INT64* ) = extension_funcs[EXT_glGetInteger64v];
6347   TRACE("(%d, %p)\n", pname, params );
6348   ENTER_GL();
6349   func_glGetInteger64v( pname, params );
6350   LEAVE_GL();
6351 }
6352
6353 static void WINAPI wine_glGetIntegerIndexedvEXT( GLenum target, GLuint index, GLint* data ) {
6354   void (*func_glGetIntegerIndexedvEXT)( GLenum, GLuint, GLint* ) = extension_funcs[EXT_glGetIntegerIndexedvEXT];
6355   TRACE("(%d, %d, %p)\n", target, index, data );
6356   ENTER_GL();
6357   func_glGetIntegerIndexedvEXT( target, index, data );
6358   LEAVE_GL();
6359 }
6360
6361 static void WINAPI wine_glGetIntegeri_v( GLenum target, GLuint index, GLint* data ) {
6362   void (*func_glGetIntegeri_v)( GLenum, GLuint, GLint* ) = extension_funcs[EXT_glGetIntegeri_v];
6363   TRACE("(%d, %d, %p)\n", target, index, data );
6364   ENTER_GL();
6365   func_glGetIntegeri_v( target, index, data );
6366   LEAVE_GL();
6367 }
6368
6369 static void WINAPI wine_glGetIntegerui64i_vNV( GLenum value, GLuint index, UINT64* result ) {
6370   void (*func_glGetIntegerui64i_vNV)( GLenum, GLuint, UINT64* ) = extension_funcs[EXT_glGetIntegerui64i_vNV];
6371   TRACE("(%d, %d, %p)\n", value, index, result );
6372   ENTER_GL();
6373   func_glGetIntegerui64i_vNV( value, index, result );
6374   LEAVE_GL();
6375 }
6376
6377 static void WINAPI wine_glGetIntegerui64vNV( GLenum value, UINT64* result ) {
6378   void (*func_glGetIntegerui64vNV)( GLenum, UINT64* ) = extension_funcs[EXT_glGetIntegerui64vNV];
6379   TRACE("(%d, %p)\n", value, result );
6380   ENTER_GL();
6381   func_glGetIntegerui64vNV( value, result );
6382   LEAVE_GL();
6383 }
6384
6385 static void WINAPI wine_glGetInvariantBooleanvEXT( GLuint id, GLenum value, GLboolean* data ) {
6386   void (*func_glGetInvariantBooleanvEXT)( GLuint, GLenum, GLboolean* ) = extension_funcs[EXT_glGetInvariantBooleanvEXT];
6387   TRACE("(%d, %d, %p)\n", id, value, data );
6388   ENTER_GL();
6389   func_glGetInvariantBooleanvEXT( id, value, data );
6390   LEAVE_GL();
6391 }
6392
6393 static void WINAPI wine_glGetInvariantFloatvEXT( GLuint id, GLenum value, GLfloat* data ) {
6394   void (*func_glGetInvariantFloatvEXT)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetInvariantFloatvEXT];
6395   TRACE("(%d, %d, %p)\n", id, value, data );
6396   ENTER_GL();
6397   func_glGetInvariantFloatvEXT( id, value, data );
6398   LEAVE_GL();
6399 }
6400
6401 static void WINAPI wine_glGetInvariantIntegervEXT( GLuint id, GLenum value, GLint* data ) {
6402   void (*func_glGetInvariantIntegervEXT)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetInvariantIntegervEXT];
6403   TRACE("(%d, %d, %p)\n", id, value, data );
6404   ENTER_GL();
6405   func_glGetInvariantIntegervEXT( id, value, data );
6406   LEAVE_GL();
6407 }
6408
6409 static void WINAPI wine_glGetListParameterfvSGIX( GLuint list, GLenum pname, GLfloat* params ) {
6410   void (*func_glGetListParameterfvSGIX)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetListParameterfvSGIX];
6411   TRACE("(%d, %d, %p)\n", list, pname, params );
6412   ENTER_GL();
6413   func_glGetListParameterfvSGIX( list, pname, params );
6414   LEAVE_GL();
6415 }
6416
6417 static void WINAPI wine_glGetListParameterivSGIX( GLuint list, GLenum pname, GLint* params ) {
6418   void (*func_glGetListParameterivSGIX)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetListParameterivSGIX];
6419   TRACE("(%d, %d, %p)\n", list, pname, params );
6420   ENTER_GL();
6421   func_glGetListParameterivSGIX( list, pname, params );
6422   LEAVE_GL();
6423 }
6424
6425 static void WINAPI wine_glGetLocalConstantBooleanvEXT( GLuint id, GLenum value, GLboolean* data ) {
6426   void (*func_glGetLocalConstantBooleanvEXT)( GLuint, GLenum, GLboolean* ) = extension_funcs[EXT_glGetLocalConstantBooleanvEXT];
6427   TRACE("(%d, %d, %p)\n", id, value, data );
6428   ENTER_GL();
6429   func_glGetLocalConstantBooleanvEXT( id, value, data );
6430   LEAVE_GL();
6431 }
6432
6433 static void WINAPI wine_glGetLocalConstantFloatvEXT( GLuint id, GLenum value, GLfloat* data ) {
6434   void (*func_glGetLocalConstantFloatvEXT)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetLocalConstantFloatvEXT];
6435   TRACE("(%d, %d, %p)\n", id, value, data );
6436   ENTER_GL();
6437   func_glGetLocalConstantFloatvEXT( id, value, data );
6438   LEAVE_GL();
6439 }
6440
6441 static void WINAPI wine_glGetLocalConstantIntegervEXT( GLuint id, GLenum value, GLint* data ) {
6442   void (*func_glGetLocalConstantIntegervEXT)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetLocalConstantIntegervEXT];
6443   TRACE("(%d, %d, %p)\n", id, value, data );
6444   ENTER_GL();
6445   func_glGetLocalConstantIntegervEXT( id, value, data );
6446   LEAVE_GL();
6447 }
6448
6449 static void WINAPI wine_glGetMapAttribParameterfvNV( GLenum target, GLuint index, GLenum pname, GLfloat* params ) {
6450   void (*func_glGetMapAttribParameterfvNV)( GLenum, GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetMapAttribParameterfvNV];
6451   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
6452   ENTER_GL();
6453   func_glGetMapAttribParameterfvNV( target, index, pname, params );
6454   LEAVE_GL();
6455 }
6456
6457 static void WINAPI wine_glGetMapAttribParameterivNV( GLenum target, GLuint index, GLenum pname, GLint* params ) {
6458   void (*func_glGetMapAttribParameterivNV)( GLenum, GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetMapAttribParameterivNV];
6459   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
6460   ENTER_GL();
6461   func_glGetMapAttribParameterivNV( target, index, pname, params );
6462   LEAVE_GL();
6463 }
6464
6465 static void WINAPI wine_glGetMapControlPointsNV( GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid* points ) {
6466   void (*func_glGetMapControlPointsNV)( GLenum, GLuint, GLenum, GLsizei, GLsizei, GLboolean, GLvoid* ) = extension_funcs[EXT_glGetMapControlPointsNV];
6467   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, index, type, ustride, vstride, packed, points );
6468   ENTER_GL();
6469   func_glGetMapControlPointsNV( target, index, type, ustride, vstride, packed, points );
6470   LEAVE_GL();
6471 }
6472
6473 static void WINAPI wine_glGetMapParameterfvNV( GLenum target, GLenum pname, GLfloat* params ) {
6474   void (*func_glGetMapParameterfvNV)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetMapParameterfvNV];
6475   TRACE("(%d, %d, %p)\n", target, pname, params );
6476   ENTER_GL();
6477   func_glGetMapParameterfvNV( target, pname, params );
6478   LEAVE_GL();
6479 }
6480
6481 static void WINAPI wine_glGetMapParameterivNV( GLenum target, GLenum pname, GLint* params ) {
6482   void (*func_glGetMapParameterivNV)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetMapParameterivNV];
6483   TRACE("(%d, %d, %p)\n", target, pname, params );
6484   ENTER_GL();
6485   func_glGetMapParameterivNV( target, pname, params );
6486   LEAVE_GL();
6487 }
6488
6489 static void WINAPI wine_glGetMinmax( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid* values ) {
6490   void (*func_glGetMinmax)( GLenum, GLboolean, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetMinmax];
6491   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
6492   ENTER_GL();
6493   func_glGetMinmax( target, reset, format, type, values );
6494   LEAVE_GL();
6495 }
6496
6497 static void WINAPI wine_glGetMinmaxEXT( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid* values ) {
6498   void (*func_glGetMinmaxEXT)( GLenum, GLboolean, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetMinmaxEXT];
6499   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
6500   ENTER_GL();
6501   func_glGetMinmaxEXT( target, reset, format, type, values );
6502   LEAVE_GL();
6503 }
6504
6505 static void WINAPI wine_glGetMinmaxParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
6506   void (*func_glGetMinmaxParameterfv)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetMinmaxParameterfv];
6507   TRACE("(%d, %d, %p)\n", target, pname, params );
6508   ENTER_GL();
6509   func_glGetMinmaxParameterfv( target, pname, params );
6510   LEAVE_GL();
6511 }
6512
6513 static void WINAPI wine_glGetMinmaxParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
6514   void (*func_glGetMinmaxParameterfvEXT)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetMinmaxParameterfvEXT];
6515   TRACE("(%d, %d, %p)\n", target, pname, params );
6516   ENTER_GL();
6517   func_glGetMinmaxParameterfvEXT( target, pname, params );
6518   LEAVE_GL();
6519 }
6520
6521 static void WINAPI wine_glGetMinmaxParameteriv( GLenum target, GLenum pname, GLint* params ) {
6522   void (*func_glGetMinmaxParameteriv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetMinmaxParameteriv];
6523   TRACE("(%d, %d, %p)\n", target, pname, params );
6524   ENTER_GL();
6525   func_glGetMinmaxParameteriv( target, pname, params );
6526   LEAVE_GL();
6527 }
6528
6529 static void WINAPI wine_glGetMinmaxParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
6530   void (*func_glGetMinmaxParameterivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetMinmaxParameterivEXT];
6531   TRACE("(%d, %d, %p)\n", target, pname, params );
6532   ENTER_GL();
6533   func_glGetMinmaxParameterivEXT( target, pname, params );
6534   LEAVE_GL();
6535 }
6536
6537 static void WINAPI wine_glGetMultiTexEnvfvEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat* params ) {
6538   void (*func_glGetMultiTexEnvfvEXT)( GLenum, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetMultiTexEnvfvEXT];
6539   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6540   ENTER_GL();
6541   func_glGetMultiTexEnvfvEXT( texunit, target, pname, params );
6542   LEAVE_GL();
6543 }
6544
6545 static void WINAPI wine_glGetMultiTexEnvivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
6546   void (*func_glGetMultiTexEnvivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetMultiTexEnvivEXT];
6547   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6548   ENTER_GL();
6549   func_glGetMultiTexEnvivEXT( texunit, target, pname, params );
6550   LEAVE_GL();
6551 }
6552
6553 static void WINAPI wine_glGetMultiTexGendvEXT( GLenum texunit, GLenum coord, GLenum pname, GLdouble* params ) {
6554   void (*func_glGetMultiTexGendvEXT)( GLenum, GLenum, GLenum, GLdouble* ) = extension_funcs[EXT_glGetMultiTexGendvEXT];
6555   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
6556   ENTER_GL();
6557   func_glGetMultiTexGendvEXT( texunit, coord, pname, params );
6558   LEAVE_GL();
6559 }
6560
6561 static void WINAPI wine_glGetMultiTexGenfvEXT( GLenum texunit, GLenum coord, GLenum pname, GLfloat* params ) {
6562   void (*func_glGetMultiTexGenfvEXT)( GLenum, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetMultiTexGenfvEXT];
6563   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
6564   ENTER_GL();
6565   func_glGetMultiTexGenfvEXT( texunit, coord, pname, params );
6566   LEAVE_GL();
6567 }
6568
6569 static void WINAPI wine_glGetMultiTexGenivEXT( GLenum texunit, GLenum coord, GLenum pname, GLint* params ) {
6570   void (*func_glGetMultiTexGenivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetMultiTexGenivEXT];
6571   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
6572   ENTER_GL();
6573   func_glGetMultiTexGenivEXT( texunit, coord, pname, params );
6574   LEAVE_GL();
6575 }
6576
6577 static void WINAPI wine_glGetMultiTexImageEXT( GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, GLvoid* pixels ) {
6578   void (*func_glGetMultiTexImageEXT)( GLenum, GLenum, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetMultiTexImageEXT];
6579   TRACE("(%d, %d, %d, %d, %d, %p)\n", texunit, target, level, format, type, pixels );
6580   ENTER_GL();
6581   func_glGetMultiTexImageEXT( texunit, target, level, format, type, pixels );
6582   LEAVE_GL();
6583 }
6584
6585 static void WINAPI wine_glGetMultiTexLevelParameterfvEXT( GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat* params ) {
6586   void (*func_glGetMultiTexLevelParameterfvEXT)( GLenum, GLenum, GLint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetMultiTexLevelParameterfvEXT];
6587   TRACE("(%d, %d, %d, %d, %p)\n", texunit, target, level, pname, params );
6588   ENTER_GL();
6589   func_glGetMultiTexLevelParameterfvEXT( texunit, target, level, pname, params );
6590   LEAVE_GL();
6591 }
6592
6593 static void WINAPI wine_glGetMultiTexLevelParameterivEXT( GLenum texunit, GLenum target, GLint level, GLenum pname, GLint* params ) {
6594   void (*func_glGetMultiTexLevelParameterivEXT)( GLenum, GLenum, GLint, GLenum, GLint* ) = extension_funcs[EXT_glGetMultiTexLevelParameterivEXT];
6595   TRACE("(%d, %d, %d, %d, %p)\n", texunit, target, level, pname, params );
6596   ENTER_GL();
6597   func_glGetMultiTexLevelParameterivEXT( texunit, target, level, pname, params );
6598   LEAVE_GL();
6599 }
6600
6601 static void WINAPI wine_glGetMultiTexParameterIivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
6602   void (*func_glGetMultiTexParameterIivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetMultiTexParameterIivEXT];
6603   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6604   ENTER_GL();
6605   func_glGetMultiTexParameterIivEXT( texunit, target, pname, params );
6606   LEAVE_GL();
6607 }
6608
6609 static void WINAPI wine_glGetMultiTexParameterIuivEXT( GLenum texunit, GLenum target, GLenum pname, GLuint* params ) {
6610   void (*func_glGetMultiTexParameterIuivEXT)( GLenum, GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glGetMultiTexParameterIuivEXT];
6611   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6612   ENTER_GL();
6613   func_glGetMultiTexParameterIuivEXT( texunit, target, pname, params );
6614   LEAVE_GL();
6615 }
6616
6617 static void WINAPI wine_glGetMultiTexParameterfvEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat* params ) {
6618   void (*func_glGetMultiTexParameterfvEXT)( GLenum, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetMultiTexParameterfvEXT];
6619   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6620   ENTER_GL();
6621   func_glGetMultiTexParameterfvEXT( texunit, target, pname, params );
6622   LEAVE_GL();
6623 }
6624
6625 static void WINAPI wine_glGetMultiTexParameterivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
6626   void (*func_glGetMultiTexParameterivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetMultiTexParameterivEXT];
6627   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6628   ENTER_GL();
6629   func_glGetMultiTexParameterivEXT( texunit, target, pname, params );
6630   LEAVE_GL();
6631 }
6632
6633 static void WINAPI wine_glGetMultisamplefv( GLenum pname, GLuint index, GLfloat* val ) {
6634   void (*func_glGetMultisamplefv)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glGetMultisamplefv];
6635   TRACE("(%d, %d, %p)\n", pname, index, val );
6636   ENTER_GL();
6637   func_glGetMultisamplefv( pname, index, val );
6638   LEAVE_GL();
6639 }
6640
6641 static void WINAPI wine_glGetMultisamplefvNV( GLenum pname, GLuint index, GLfloat* val ) {
6642   void (*func_glGetMultisamplefvNV)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glGetMultisamplefvNV];
6643   TRACE("(%d, %d, %p)\n", pname, index, val );
6644   ENTER_GL();
6645   func_glGetMultisamplefvNV( pname, index, val );
6646   LEAVE_GL();
6647 }
6648
6649 static void WINAPI wine_glGetNamedBufferParameterivEXT( GLuint buffer, GLenum pname, GLint* params ) {
6650   void (*func_glGetNamedBufferParameterivEXT)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetNamedBufferParameterivEXT];
6651   TRACE("(%d, %d, %p)\n", buffer, pname, params );
6652   ENTER_GL();
6653   func_glGetNamedBufferParameterivEXT( buffer, pname, params );
6654   LEAVE_GL();
6655 }
6656
6657 static void WINAPI wine_glGetNamedBufferParameterui64vNV( GLuint buffer, GLenum pname, UINT64* params ) {
6658   void (*func_glGetNamedBufferParameterui64vNV)( GLuint, GLenum, UINT64* ) = extension_funcs[EXT_glGetNamedBufferParameterui64vNV];
6659   TRACE("(%d, %d, %p)\n", buffer, pname, params );
6660   ENTER_GL();
6661   func_glGetNamedBufferParameterui64vNV( buffer, pname, params );
6662   LEAVE_GL();
6663 }
6664
6665 static void WINAPI wine_glGetNamedBufferPointervEXT( GLuint buffer, GLenum pname, GLvoid** params ) {
6666   void (*func_glGetNamedBufferPointervEXT)( GLuint, GLenum, GLvoid** ) = extension_funcs[EXT_glGetNamedBufferPointervEXT];
6667   TRACE("(%d, %d, %p)\n", buffer, pname, params );
6668   ENTER_GL();
6669   func_glGetNamedBufferPointervEXT( buffer, pname, params );
6670   LEAVE_GL();
6671 }
6672
6673 static void WINAPI wine_glGetNamedBufferSubDataEXT( GLuint buffer, INT_PTR offset, INT_PTR size, GLvoid* data ) {
6674   void (*func_glGetNamedBufferSubDataEXT)( GLuint, INT_PTR, INT_PTR, GLvoid* ) = extension_funcs[EXT_glGetNamedBufferSubDataEXT];
6675   TRACE("(%d, %ld, %ld, %p)\n", buffer, offset, size, data );
6676   ENTER_GL();
6677   func_glGetNamedBufferSubDataEXT( buffer, offset, size, data );
6678   LEAVE_GL();
6679 }
6680
6681 static void WINAPI wine_glGetNamedFramebufferAttachmentParameterivEXT( GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params ) {
6682   void (*func_glGetNamedFramebufferAttachmentParameterivEXT)( GLuint, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetNamedFramebufferAttachmentParameterivEXT];
6683   TRACE("(%d, %d, %d, %p)\n", framebuffer, attachment, pname, params );
6684   ENTER_GL();
6685   func_glGetNamedFramebufferAttachmentParameterivEXT( framebuffer, attachment, pname, params );
6686   LEAVE_GL();
6687 }
6688
6689 static void WINAPI wine_glGetNamedProgramLocalParameterIivEXT( GLuint program, GLenum target, GLuint index, GLint* params ) {
6690   void (*func_glGetNamedProgramLocalParameterIivEXT)( GLuint, GLenum, GLuint, GLint* ) = extension_funcs[EXT_glGetNamedProgramLocalParameterIivEXT];
6691   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
6692   ENTER_GL();
6693   func_glGetNamedProgramLocalParameterIivEXT( program, target, index, params );
6694   LEAVE_GL();
6695 }
6696
6697 static void WINAPI wine_glGetNamedProgramLocalParameterIuivEXT( GLuint program, GLenum target, GLuint index, GLuint* params ) {
6698   void (*func_glGetNamedProgramLocalParameterIuivEXT)( GLuint, GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glGetNamedProgramLocalParameterIuivEXT];
6699   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
6700   ENTER_GL();
6701   func_glGetNamedProgramLocalParameterIuivEXT( program, target, index, params );
6702   LEAVE_GL();
6703 }
6704
6705 static void WINAPI wine_glGetNamedProgramLocalParameterdvEXT( GLuint program, GLenum target, GLuint index, GLdouble* params ) {
6706   void (*func_glGetNamedProgramLocalParameterdvEXT)( GLuint, GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glGetNamedProgramLocalParameterdvEXT];
6707   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
6708   ENTER_GL();
6709   func_glGetNamedProgramLocalParameterdvEXT( program, target, index, params );
6710   LEAVE_GL();
6711 }
6712
6713 static void WINAPI wine_glGetNamedProgramLocalParameterfvEXT( GLuint program, GLenum target, GLuint index, GLfloat* params ) {
6714   void (*func_glGetNamedProgramLocalParameterfvEXT)( GLuint, GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glGetNamedProgramLocalParameterfvEXT];
6715   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
6716   ENTER_GL();
6717   func_glGetNamedProgramLocalParameterfvEXT( program, target, index, params );
6718   LEAVE_GL();
6719 }
6720
6721 static void WINAPI wine_glGetNamedProgramStringEXT( GLuint program, GLenum target, GLenum pname, GLvoid* string ) {
6722   void (*func_glGetNamedProgramStringEXT)( GLuint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetNamedProgramStringEXT];
6723   TRACE("(%d, %d, %d, %p)\n", program, target, pname, string );
6724   ENTER_GL();
6725   func_glGetNamedProgramStringEXT( program, target, pname, string );
6726   LEAVE_GL();
6727 }
6728
6729 static void WINAPI wine_glGetNamedProgramivEXT( GLuint program, GLenum target, GLenum pname, GLint* params ) {
6730   void (*func_glGetNamedProgramivEXT)( GLuint, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetNamedProgramivEXT];
6731   TRACE("(%d, %d, %d, %p)\n", program, target, pname, params );
6732   ENTER_GL();
6733   func_glGetNamedProgramivEXT( program, target, pname, params );
6734   LEAVE_GL();
6735 }
6736
6737 static void WINAPI wine_glGetNamedRenderbufferParameterivEXT( GLuint renderbuffer, GLenum pname, GLint* params ) {
6738   void (*func_glGetNamedRenderbufferParameterivEXT)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetNamedRenderbufferParameterivEXT];
6739   TRACE("(%d, %d, %p)\n", renderbuffer, pname, params );
6740   ENTER_GL();
6741   func_glGetNamedRenderbufferParameterivEXT( renderbuffer, pname, params );
6742   LEAVE_GL();
6743 }
6744
6745 static void WINAPI wine_glGetNamedStringARB( GLint namelen, char* name, GLsizei bufSize, GLint* stringlen, char* string ) {
6746   void (*func_glGetNamedStringARB)( GLint, char*, GLsizei, GLint*, char* ) = extension_funcs[EXT_glGetNamedStringARB];
6747   TRACE("(%d, %p, %d, %p, %p)\n", namelen, name, bufSize, stringlen, string );
6748   ENTER_GL();
6749   func_glGetNamedStringARB( namelen, name, bufSize, stringlen, string );
6750   LEAVE_GL();
6751 }
6752
6753 static void WINAPI wine_glGetNamedStringivARB( GLint namelen, char* name, GLenum pname, GLint* params ) {
6754   void (*func_glGetNamedStringivARB)( GLint, char*, GLenum, GLint* ) = extension_funcs[EXT_glGetNamedStringivARB];
6755   TRACE("(%d, %p, %d, %p)\n", namelen, name, pname, params );
6756   ENTER_GL();
6757   func_glGetNamedStringivARB( namelen, name, pname, params );
6758   LEAVE_GL();
6759 }
6760
6761 static void WINAPI wine_glGetObjectBufferfvATI( GLuint buffer, GLenum pname, GLfloat* params ) {
6762   void (*func_glGetObjectBufferfvATI)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetObjectBufferfvATI];
6763   TRACE("(%d, %d, %p)\n", buffer, pname, params );
6764   ENTER_GL();
6765   func_glGetObjectBufferfvATI( buffer, pname, params );
6766   LEAVE_GL();
6767 }
6768
6769 static void WINAPI wine_glGetObjectBufferivATI( GLuint buffer, GLenum pname, GLint* params ) {
6770   void (*func_glGetObjectBufferivATI)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetObjectBufferivATI];
6771   TRACE("(%d, %d, %p)\n", buffer, pname, params );
6772   ENTER_GL();
6773   func_glGetObjectBufferivATI( buffer, pname, params );
6774   LEAVE_GL();
6775 }
6776
6777 static void WINAPI wine_glGetObjectParameterfvARB( unsigned int obj, GLenum pname, GLfloat* params ) {
6778   void (*func_glGetObjectParameterfvARB)( unsigned int, GLenum, GLfloat* ) = extension_funcs[EXT_glGetObjectParameterfvARB];
6779   TRACE("(%d, %d, %p)\n", obj, pname, params );
6780   ENTER_GL();
6781   func_glGetObjectParameterfvARB( obj, pname, params );
6782   LEAVE_GL();
6783 }
6784
6785 static void WINAPI wine_glGetObjectParameterivAPPLE( GLenum objectType, GLuint name, GLenum pname, GLint* params ) {
6786   void (*func_glGetObjectParameterivAPPLE)( GLenum, GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetObjectParameterivAPPLE];
6787   TRACE("(%d, %d, %d, %p)\n", objectType, name, pname, params );
6788   ENTER_GL();
6789   func_glGetObjectParameterivAPPLE( objectType, name, pname, params );
6790   LEAVE_GL();
6791 }
6792
6793 static void WINAPI wine_glGetObjectParameterivARB( unsigned int obj, GLenum pname, GLint* params ) {
6794   void (*func_glGetObjectParameterivARB)( unsigned int, GLenum, GLint* ) = extension_funcs[EXT_glGetObjectParameterivARB];
6795   TRACE("(%d, %d, %p)\n", obj, pname, params );
6796   ENTER_GL();
6797   func_glGetObjectParameterivARB( obj, pname, params );
6798   LEAVE_GL();
6799 }
6800
6801 static void WINAPI wine_glGetOcclusionQueryivNV( GLuint id, GLenum pname, GLint* params ) {
6802   void (*func_glGetOcclusionQueryivNV)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetOcclusionQueryivNV];
6803   TRACE("(%d, %d, %p)\n", id, pname, params );
6804   ENTER_GL();
6805   func_glGetOcclusionQueryivNV( id, pname, params );
6806   LEAVE_GL();
6807 }
6808
6809 static void WINAPI wine_glGetOcclusionQueryuivNV( GLuint id, GLenum pname, GLuint* params ) {
6810   void (*func_glGetOcclusionQueryuivNV)( GLuint, GLenum, GLuint* ) = extension_funcs[EXT_glGetOcclusionQueryuivNV];
6811   TRACE("(%d, %d, %p)\n", id, pname, params );
6812   ENTER_GL();
6813   func_glGetOcclusionQueryuivNV( id, pname, params );
6814   LEAVE_GL();
6815 }
6816
6817 static void WINAPI wine_glGetPerfMonitorCounterDataAMD( GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint* bytesWritten ) {
6818   void (*func_glGetPerfMonitorCounterDataAMD)( GLuint, GLenum, GLsizei, GLuint*, GLint* ) = extension_funcs[EXT_glGetPerfMonitorCounterDataAMD];
6819   TRACE("(%d, %d, %d, %p, %p)\n", monitor, pname, dataSize, data, bytesWritten );
6820   ENTER_GL();
6821   func_glGetPerfMonitorCounterDataAMD( monitor, pname, dataSize, data, bytesWritten );
6822   LEAVE_GL();
6823 }
6824
6825 static void WINAPI wine_glGetPerfMonitorCounterInfoAMD( GLuint group, GLuint counter, GLenum pname, GLvoid* data ) {
6826   void (*func_glGetPerfMonitorCounterInfoAMD)( GLuint, GLuint, GLenum, GLvoid* ) = extension_funcs[EXT_glGetPerfMonitorCounterInfoAMD];
6827   TRACE("(%d, %d, %d, %p)\n", group, counter, pname, data );
6828   ENTER_GL();
6829   func_glGetPerfMonitorCounterInfoAMD( group, counter, pname, data );
6830   LEAVE_GL();
6831 }
6832
6833 static void WINAPI wine_glGetPerfMonitorCounterStringAMD( GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, char* counterString ) {
6834   void (*func_glGetPerfMonitorCounterStringAMD)( GLuint, GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetPerfMonitorCounterStringAMD];
6835   TRACE("(%d, %d, %d, %p, %p)\n", group, counter, bufSize, length, counterString );
6836   ENTER_GL();
6837   func_glGetPerfMonitorCounterStringAMD( group, counter, bufSize, length, counterString );
6838   LEAVE_GL();
6839 }
6840
6841 static void WINAPI wine_glGetPerfMonitorCountersAMD( GLuint group, GLint* numCounters, GLint* maxActiveCounters, GLsizei counterSize, GLuint* counters ) {
6842   void (*func_glGetPerfMonitorCountersAMD)( GLuint, GLint*, GLint*, GLsizei, GLuint* ) = extension_funcs[EXT_glGetPerfMonitorCountersAMD];
6843   TRACE("(%d, %p, %p, %d, %p)\n", group, numCounters, maxActiveCounters, counterSize, counters );
6844   ENTER_GL();
6845   func_glGetPerfMonitorCountersAMD( group, numCounters, maxActiveCounters, counterSize, counters );
6846   LEAVE_GL();
6847 }
6848
6849 static void WINAPI wine_glGetPerfMonitorGroupStringAMD( GLuint group, GLsizei bufSize, GLsizei* length, char* groupString ) {
6850   void (*func_glGetPerfMonitorGroupStringAMD)( GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetPerfMonitorGroupStringAMD];
6851   TRACE("(%d, %d, %p, %p)\n", group, bufSize, length, groupString );
6852   ENTER_GL();
6853   func_glGetPerfMonitorGroupStringAMD( group, bufSize, length, groupString );
6854   LEAVE_GL();
6855 }
6856
6857 static void WINAPI wine_glGetPerfMonitorGroupsAMD( GLint* numGroups, GLsizei groupsSize, GLuint* groups ) {
6858   void (*func_glGetPerfMonitorGroupsAMD)( GLint*, GLsizei, GLuint* ) = extension_funcs[EXT_glGetPerfMonitorGroupsAMD];
6859   TRACE("(%p, %d, %p)\n", numGroups, groupsSize, groups );
6860   ENTER_GL();
6861   func_glGetPerfMonitorGroupsAMD( numGroups, groupsSize, groups );
6862   LEAVE_GL();
6863 }
6864
6865 static void WINAPI wine_glGetPixelTexGenParameterfvSGIS( GLenum pname, GLfloat* params ) {
6866   void (*func_glGetPixelTexGenParameterfvSGIS)( GLenum, GLfloat* ) = extension_funcs[EXT_glGetPixelTexGenParameterfvSGIS];
6867   TRACE("(%d, %p)\n", pname, params );
6868   ENTER_GL();
6869   func_glGetPixelTexGenParameterfvSGIS( pname, params );
6870   LEAVE_GL();
6871 }
6872
6873 static void WINAPI wine_glGetPixelTexGenParameterivSGIS( GLenum pname, GLint* params ) {
6874   void (*func_glGetPixelTexGenParameterivSGIS)( GLenum, GLint* ) = extension_funcs[EXT_glGetPixelTexGenParameterivSGIS];
6875   TRACE("(%d, %p)\n", pname, params );
6876   ENTER_GL();
6877   func_glGetPixelTexGenParameterivSGIS( pname, params );
6878   LEAVE_GL();
6879 }
6880
6881 static void WINAPI wine_glGetPointerIndexedvEXT( GLenum target, GLuint index, GLvoid** data ) {
6882   void (*func_glGetPointerIndexedvEXT)( GLenum, GLuint, GLvoid** ) = extension_funcs[EXT_glGetPointerIndexedvEXT];
6883   TRACE("(%d, %d, %p)\n", target, index, data );
6884   ENTER_GL();
6885   func_glGetPointerIndexedvEXT( target, index, data );
6886   LEAVE_GL();
6887 }
6888
6889 static void WINAPI wine_glGetPointervEXT( GLenum pname, GLvoid** params ) {
6890   void (*func_glGetPointervEXT)( GLenum, GLvoid** ) = extension_funcs[EXT_glGetPointervEXT];
6891   TRACE("(%d, %p)\n", pname, params );
6892   ENTER_GL();
6893   func_glGetPointervEXT( pname, params );
6894   LEAVE_GL();
6895 }
6896
6897 static void WINAPI wine_glGetProgramBinary( GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary ) {
6898   void (*func_glGetProgramBinary)( GLuint, GLsizei, GLsizei*, GLenum*, GLvoid* ) = extension_funcs[EXT_glGetProgramBinary];
6899   TRACE("(%d, %d, %p, %p, %p)\n", program, bufSize, length, binaryFormat, binary );
6900   ENTER_GL();
6901   func_glGetProgramBinary( program, bufSize, length, binaryFormat, binary );
6902   LEAVE_GL();
6903 }
6904
6905 static void WINAPI wine_glGetProgramEnvParameterIivNV( GLenum target, GLuint index, GLint* params ) {
6906   void (*func_glGetProgramEnvParameterIivNV)( GLenum, GLuint, GLint* ) = extension_funcs[EXT_glGetProgramEnvParameterIivNV];
6907   TRACE("(%d, %d, %p)\n", target, index, params );
6908   ENTER_GL();
6909   func_glGetProgramEnvParameterIivNV( target, index, params );
6910   LEAVE_GL();
6911 }
6912
6913 static void WINAPI wine_glGetProgramEnvParameterIuivNV( GLenum target, GLuint index, GLuint* params ) {
6914   void (*func_glGetProgramEnvParameterIuivNV)( GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glGetProgramEnvParameterIuivNV];
6915   TRACE("(%d, %d, %p)\n", target, index, params );
6916   ENTER_GL();
6917   func_glGetProgramEnvParameterIuivNV( target, index, params );
6918   LEAVE_GL();
6919 }
6920
6921 static void WINAPI wine_glGetProgramEnvParameterdvARB( GLenum target, GLuint index, GLdouble* params ) {
6922   void (*func_glGetProgramEnvParameterdvARB)( GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glGetProgramEnvParameterdvARB];
6923   TRACE("(%d, %d, %p)\n", target, index, params );
6924   ENTER_GL();
6925   func_glGetProgramEnvParameterdvARB( target, index, params );
6926   LEAVE_GL();
6927 }
6928
6929 static void WINAPI wine_glGetProgramEnvParameterfvARB( GLenum target, GLuint index, GLfloat* params ) {
6930   void (*func_glGetProgramEnvParameterfvARB)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glGetProgramEnvParameterfvARB];
6931   TRACE("(%d, %d, %p)\n", target, index, params );
6932   ENTER_GL();
6933   func_glGetProgramEnvParameterfvARB( target, index, params );
6934   LEAVE_GL();
6935 }
6936
6937 static void WINAPI wine_glGetProgramInfoLog( GLuint program, GLsizei bufSize, GLsizei* length, char* infoLog ) {
6938   void (*func_glGetProgramInfoLog)( GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetProgramInfoLog];
6939   TRACE("(%d, %d, %p, %p)\n", program, bufSize, length, infoLog );
6940   ENTER_GL();
6941   func_glGetProgramInfoLog( program, bufSize, length, infoLog );
6942   LEAVE_GL();
6943 }
6944
6945 static void WINAPI wine_glGetProgramLocalParameterIivNV( GLenum target, GLuint index, GLint* params ) {
6946   void (*func_glGetProgramLocalParameterIivNV)( GLenum, GLuint, GLint* ) = extension_funcs[EXT_glGetProgramLocalParameterIivNV];
6947   TRACE("(%d, %d, %p)\n", target, index, params );
6948   ENTER_GL();
6949   func_glGetProgramLocalParameterIivNV( target, index, params );
6950   LEAVE_GL();
6951 }
6952
6953 static void WINAPI wine_glGetProgramLocalParameterIuivNV( GLenum target, GLuint index, GLuint* params ) {
6954   void (*func_glGetProgramLocalParameterIuivNV)( GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glGetProgramLocalParameterIuivNV];
6955   TRACE("(%d, %d, %p)\n", target, index, params );
6956   ENTER_GL();
6957   func_glGetProgramLocalParameterIuivNV( target, index, params );
6958   LEAVE_GL();
6959 }
6960
6961 static void WINAPI wine_glGetProgramLocalParameterdvARB( GLenum target, GLuint index, GLdouble* params ) {
6962   void (*func_glGetProgramLocalParameterdvARB)( GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glGetProgramLocalParameterdvARB];
6963   TRACE("(%d, %d, %p)\n", target, index, params );
6964   ENTER_GL();
6965   func_glGetProgramLocalParameterdvARB( target, index, params );
6966   LEAVE_GL();
6967 }
6968
6969 static void WINAPI wine_glGetProgramLocalParameterfvARB( GLenum target, GLuint index, GLfloat* params ) {
6970   void (*func_glGetProgramLocalParameterfvARB)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glGetProgramLocalParameterfvARB];
6971   TRACE("(%d, %d, %p)\n", target, index, params );
6972   ENTER_GL();
6973   func_glGetProgramLocalParameterfvARB( target, index, params );
6974   LEAVE_GL();
6975 }
6976
6977 static void WINAPI wine_glGetProgramNamedParameterdvNV( GLuint id, GLsizei len, GLubyte* name, GLdouble* params ) {
6978   void (*func_glGetProgramNamedParameterdvNV)( GLuint, GLsizei, GLubyte*, GLdouble* ) = extension_funcs[EXT_glGetProgramNamedParameterdvNV];
6979   TRACE("(%d, %d, %p, %p)\n", id, len, name, params );
6980   ENTER_GL();
6981   func_glGetProgramNamedParameterdvNV( id, len, name, params );
6982   LEAVE_GL();
6983 }
6984
6985 static void WINAPI wine_glGetProgramNamedParameterfvNV( GLuint id, GLsizei len, GLubyte* name, GLfloat* params ) {
6986   void (*func_glGetProgramNamedParameterfvNV)( GLuint, GLsizei, GLubyte*, GLfloat* ) = extension_funcs[EXT_glGetProgramNamedParameterfvNV];
6987   TRACE("(%d, %d, %p, %p)\n", id, len, name, params );
6988   ENTER_GL();
6989   func_glGetProgramNamedParameterfvNV( id, len, name, params );
6990   LEAVE_GL();
6991 }
6992
6993 static void WINAPI wine_glGetProgramParameterdvNV( GLenum target, GLuint index, GLenum pname, GLdouble* params ) {
6994   void (*func_glGetProgramParameterdvNV)( GLenum, GLuint, GLenum, GLdouble* ) = extension_funcs[EXT_glGetProgramParameterdvNV];
6995   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
6996   ENTER_GL();
6997   func_glGetProgramParameterdvNV( target, index, pname, params );
6998   LEAVE_GL();
6999 }
7000
7001 static void WINAPI wine_glGetProgramParameterfvNV( GLenum target, GLuint index, GLenum pname, GLfloat* params ) {
7002   void (*func_glGetProgramParameterfvNV)( GLenum, GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetProgramParameterfvNV];
7003   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
7004   ENTER_GL();
7005   func_glGetProgramParameterfvNV( target, index, pname, params );
7006   LEAVE_GL();
7007 }
7008
7009 static void WINAPI wine_glGetProgramPipelineInfoLog( GLuint pipeline, GLsizei bufSize, GLsizei* length, char* infoLog ) {
7010   void (*func_glGetProgramPipelineInfoLog)( GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetProgramPipelineInfoLog];
7011   TRACE("(%d, %d, %p, %p)\n", pipeline, bufSize, length, infoLog );
7012   ENTER_GL();
7013   func_glGetProgramPipelineInfoLog( pipeline, bufSize, length, infoLog );
7014   LEAVE_GL();
7015 }
7016
7017 static void WINAPI wine_glGetProgramPipelineiv( GLuint pipeline, GLenum pname, GLint* params ) {
7018   void (*func_glGetProgramPipelineiv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetProgramPipelineiv];
7019   TRACE("(%d, %d, %p)\n", pipeline, pname, params );
7020   ENTER_GL();
7021   func_glGetProgramPipelineiv( pipeline, pname, params );
7022   LEAVE_GL();
7023 }
7024
7025 static void WINAPI wine_glGetProgramStageiv( GLuint program, GLenum shadertype, GLenum pname, GLint* values ) {
7026   void (*func_glGetProgramStageiv)( GLuint, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetProgramStageiv];
7027   TRACE("(%d, %d, %d, %p)\n", program, shadertype, pname, values );
7028   ENTER_GL();
7029   func_glGetProgramStageiv( program, shadertype, pname, values );
7030   LEAVE_GL();
7031 }
7032
7033 static void WINAPI wine_glGetProgramStringARB( GLenum target, GLenum pname, GLvoid* string ) {
7034   void (*func_glGetProgramStringARB)( GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetProgramStringARB];
7035   TRACE("(%d, %d, %p)\n", target, pname, string );
7036   ENTER_GL();
7037   func_glGetProgramStringARB( target, pname, string );
7038   LEAVE_GL();
7039 }
7040
7041 static void WINAPI wine_glGetProgramStringNV( GLuint id, GLenum pname, GLubyte* program ) {
7042   void (*func_glGetProgramStringNV)( GLuint, GLenum, GLubyte* ) = extension_funcs[EXT_glGetProgramStringNV];
7043   TRACE("(%d, %d, %p)\n", id, pname, program );
7044   ENTER_GL();
7045   func_glGetProgramStringNV( id, pname, program );
7046   LEAVE_GL();
7047 }
7048
7049 static void WINAPI wine_glGetProgramSubroutineParameteruivNV( GLenum target, GLuint index, GLuint* param ) {
7050   void (*func_glGetProgramSubroutineParameteruivNV)( GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glGetProgramSubroutineParameteruivNV];
7051   TRACE("(%d, %d, %p)\n", target, index, param );
7052   ENTER_GL();
7053   func_glGetProgramSubroutineParameteruivNV( target, index, param );
7054   LEAVE_GL();
7055 }
7056
7057 static void WINAPI wine_glGetProgramiv( GLuint program, GLenum pname, GLint* params ) {
7058   void (*func_glGetProgramiv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetProgramiv];
7059   TRACE("(%d, %d, %p)\n", program, pname, params );
7060   ENTER_GL();
7061   func_glGetProgramiv( program, pname, params );
7062   LEAVE_GL();
7063 }
7064
7065 static void WINAPI wine_glGetProgramivARB( GLenum target, GLenum pname, GLint* params ) {
7066   void (*func_glGetProgramivARB)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetProgramivARB];
7067   TRACE("(%d, %d, %p)\n", target, pname, params );
7068   ENTER_GL();
7069   func_glGetProgramivARB( target, pname, params );
7070   LEAVE_GL();
7071 }
7072
7073 static void WINAPI wine_glGetProgramivNV( GLuint id, GLenum pname, GLint* params ) {
7074   void (*func_glGetProgramivNV)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetProgramivNV];
7075   TRACE("(%d, %d, %p)\n", id, pname, params );
7076   ENTER_GL();
7077   func_glGetProgramivNV( id, pname, params );
7078   LEAVE_GL();
7079 }
7080
7081 static void WINAPI wine_glGetQueryIndexediv( GLenum target, GLuint index, GLenum pname, GLint* params ) {
7082   void (*func_glGetQueryIndexediv)( GLenum, GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetQueryIndexediv];
7083   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
7084   ENTER_GL();
7085   func_glGetQueryIndexediv( target, index, pname, params );
7086   LEAVE_GL();
7087 }
7088
7089 static void WINAPI wine_glGetQueryObjecti64v( GLuint id, GLenum pname, INT64* params ) {
7090   void (*func_glGetQueryObjecti64v)( GLuint, GLenum, INT64* ) = extension_funcs[EXT_glGetQueryObjecti64v];
7091   TRACE("(%d, %d, %p)\n", id, pname, params );
7092   ENTER_GL();
7093   func_glGetQueryObjecti64v( id, pname, params );
7094   LEAVE_GL();
7095 }
7096
7097 static void WINAPI wine_glGetQueryObjecti64vEXT( GLuint id, GLenum pname, INT64* params ) {
7098   void (*func_glGetQueryObjecti64vEXT)( GLuint, GLenum, INT64* ) = extension_funcs[EXT_glGetQueryObjecti64vEXT];
7099   TRACE("(%d, %d, %p)\n", id, pname, params );
7100   ENTER_GL();
7101   func_glGetQueryObjecti64vEXT( id, pname, params );
7102   LEAVE_GL();
7103 }
7104
7105 static void WINAPI wine_glGetQueryObjectiv( GLuint id, GLenum pname, GLint* params ) {
7106   void (*func_glGetQueryObjectiv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetQueryObjectiv];
7107   TRACE("(%d, %d, %p)\n", id, pname, params );
7108   ENTER_GL();
7109   func_glGetQueryObjectiv( id, pname, params );
7110   LEAVE_GL();
7111 }
7112
7113 static void WINAPI wine_glGetQueryObjectivARB( GLuint id, GLenum pname, GLint* params ) {
7114   void (*func_glGetQueryObjectivARB)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetQueryObjectivARB];
7115   TRACE("(%d, %d, %p)\n", id, pname, params );
7116   ENTER_GL();
7117   func_glGetQueryObjectivARB( id, pname, params );
7118   LEAVE_GL();
7119 }
7120
7121 static void WINAPI wine_glGetQueryObjectui64v( GLuint id, GLenum pname, UINT64* params ) {
7122   void (*func_glGetQueryObjectui64v)( GLuint, GLenum, UINT64* ) = extension_funcs[EXT_glGetQueryObjectui64v];
7123   TRACE("(%d, %d, %p)\n", id, pname, params );
7124   ENTER_GL();
7125   func_glGetQueryObjectui64v( id, pname, params );
7126   LEAVE_GL();
7127 }
7128
7129 static void WINAPI wine_glGetQueryObjectui64vEXT( GLuint id, GLenum pname, UINT64* params ) {
7130   void (*func_glGetQueryObjectui64vEXT)( GLuint, GLenum, UINT64* ) = extension_funcs[EXT_glGetQueryObjectui64vEXT];
7131   TRACE("(%d, %d, %p)\n", id, pname, params );
7132   ENTER_GL();
7133   func_glGetQueryObjectui64vEXT( id, pname, params );
7134   LEAVE_GL();
7135 }
7136
7137 static void WINAPI wine_glGetQueryObjectuiv( GLuint id, GLenum pname, GLuint* params ) {
7138   void (*func_glGetQueryObjectuiv)( GLuint, GLenum, GLuint* ) = extension_funcs[EXT_glGetQueryObjectuiv];
7139   TRACE("(%d, %d, %p)\n", id, pname, params );
7140   ENTER_GL();
7141   func_glGetQueryObjectuiv( id, pname, params );
7142   LEAVE_GL();
7143 }
7144
7145 static void WINAPI wine_glGetQueryObjectuivARB( GLuint id, GLenum pname, GLuint* params ) {
7146   void (*func_glGetQueryObjectuivARB)( GLuint, GLenum, GLuint* ) = extension_funcs[EXT_glGetQueryObjectuivARB];
7147   TRACE("(%d, %d, %p)\n", id, pname, params );
7148   ENTER_GL();
7149   func_glGetQueryObjectuivARB( id, pname, params );
7150   LEAVE_GL();
7151 }
7152
7153 static void WINAPI wine_glGetQueryiv( GLenum target, GLenum pname, GLint* params ) {
7154   void (*func_glGetQueryiv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetQueryiv];
7155   TRACE("(%d, %d, %p)\n", target, pname, params );
7156   ENTER_GL();
7157   func_glGetQueryiv( target, pname, params );
7158   LEAVE_GL();
7159 }
7160
7161 static void WINAPI wine_glGetQueryivARB( GLenum target, GLenum pname, GLint* params ) {
7162   void (*func_glGetQueryivARB)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetQueryivARB];
7163   TRACE("(%d, %d, %p)\n", target, pname, params );
7164   ENTER_GL();
7165   func_glGetQueryivARB( target, pname, params );
7166   LEAVE_GL();
7167 }
7168
7169 static void WINAPI wine_glGetRenderbufferParameteriv( GLenum target, GLenum pname, GLint* params ) {
7170   void (*func_glGetRenderbufferParameteriv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetRenderbufferParameteriv];
7171   TRACE("(%d, %d, %p)\n", target, pname, params );
7172   ENTER_GL();
7173   func_glGetRenderbufferParameteriv( target, pname, params );
7174   LEAVE_GL();
7175 }
7176
7177 static void WINAPI wine_glGetRenderbufferParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
7178   void (*func_glGetRenderbufferParameterivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetRenderbufferParameterivEXT];
7179   TRACE("(%d, %d, %p)\n", target, pname, params );
7180   ENTER_GL();
7181   func_glGetRenderbufferParameterivEXT( target, pname, params );
7182   LEAVE_GL();
7183 }
7184
7185 static void WINAPI wine_glGetSamplerParameterIiv( GLuint sampler, GLenum pname, GLint* params ) {
7186   void (*func_glGetSamplerParameterIiv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetSamplerParameterIiv];
7187   TRACE("(%d, %d, %p)\n", sampler, pname, params );
7188   ENTER_GL();
7189   func_glGetSamplerParameterIiv( sampler, pname, params );
7190   LEAVE_GL();
7191 }
7192
7193 static void WINAPI wine_glGetSamplerParameterIuiv( GLuint sampler, GLenum pname, GLuint* params ) {
7194   void (*func_glGetSamplerParameterIuiv)( GLuint, GLenum, GLuint* ) = extension_funcs[EXT_glGetSamplerParameterIuiv];
7195   TRACE("(%d, %d, %p)\n", sampler, pname, params );
7196   ENTER_GL();
7197   func_glGetSamplerParameterIuiv( sampler, pname, params );
7198   LEAVE_GL();
7199 }
7200
7201 static void WINAPI wine_glGetSamplerParameterfv( GLuint sampler, GLenum pname, GLfloat* params ) {
7202   void (*func_glGetSamplerParameterfv)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetSamplerParameterfv];
7203   TRACE("(%d, %d, %p)\n", sampler, pname, params );
7204   ENTER_GL();
7205   func_glGetSamplerParameterfv( sampler, pname, params );
7206   LEAVE_GL();
7207 }
7208
7209 static void WINAPI wine_glGetSamplerParameteriv( GLuint sampler, GLenum pname, GLint* params ) {
7210   void (*func_glGetSamplerParameteriv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetSamplerParameteriv];
7211   TRACE("(%d, %d, %p)\n", sampler, pname, params );
7212   ENTER_GL();
7213   func_glGetSamplerParameteriv( sampler, pname, params );
7214   LEAVE_GL();
7215 }
7216
7217 static void WINAPI wine_glGetSeparableFilter( GLenum target, GLenum format, GLenum type, GLvoid* row, GLvoid* column, GLvoid* span ) {
7218   void (*func_glGetSeparableFilter)( GLenum, GLenum, GLenum, GLvoid*, GLvoid*, GLvoid* ) = extension_funcs[EXT_glGetSeparableFilter];
7219   TRACE("(%d, %d, %d, %p, %p, %p)\n", target, format, type, row, column, span );
7220   ENTER_GL();
7221   func_glGetSeparableFilter( target, format, type, row, column, span );
7222   LEAVE_GL();
7223 }
7224
7225 static void WINAPI wine_glGetSeparableFilterEXT( GLenum target, GLenum format, GLenum type, GLvoid* row, GLvoid* column, GLvoid* span ) {
7226   void (*func_glGetSeparableFilterEXT)( GLenum, GLenum, GLenum, GLvoid*, GLvoid*, GLvoid* ) = extension_funcs[EXT_glGetSeparableFilterEXT];
7227   TRACE("(%d, %d, %d, %p, %p, %p)\n", target, format, type, row, column, span );
7228   ENTER_GL();
7229   func_glGetSeparableFilterEXT( target, format, type, row, column, span );
7230   LEAVE_GL();
7231 }
7232
7233 static void WINAPI wine_glGetShaderInfoLog( GLuint shader, GLsizei bufSize, GLsizei* length, char* infoLog ) {
7234   void (*func_glGetShaderInfoLog)( GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetShaderInfoLog];
7235   TRACE("(%d, %d, %p, %p)\n", shader, bufSize, length, infoLog );
7236   ENTER_GL();
7237   func_glGetShaderInfoLog( shader, bufSize, length, infoLog );
7238   LEAVE_GL();
7239 }
7240
7241 static void WINAPI wine_glGetShaderPrecisionFormat( GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision ) {
7242   void (*func_glGetShaderPrecisionFormat)( GLenum, GLenum, GLint*, GLint* ) = extension_funcs[EXT_glGetShaderPrecisionFormat];
7243   TRACE("(%d, %d, %p, %p)\n", shadertype, precisiontype, range, precision );
7244   ENTER_GL();
7245   func_glGetShaderPrecisionFormat( shadertype, precisiontype, range, precision );
7246   LEAVE_GL();
7247 }
7248
7249 static void WINAPI wine_glGetShaderSource( GLuint shader, GLsizei bufSize, GLsizei* length, char* source ) {
7250   void (*func_glGetShaderSource)( GLuint, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetShaderSource];
7251   TRACE("(%d, %d, %p, %p)\n", shader, bufSize, length, source );
7252   ENTER_GL();
7253   func_glGetShaderSource( shader, bufSize, length, source );
7254   LEAVE_GL();
7255 }
7256
7257 static void WINAPI wine_glGetShaderSourceARB( unsigned int obj, GLsizei maxLength, GLsizei* length, char* source ) {
7258   void (*func_glGetShaderSourceARB)( unsigned int, GLsizei, GLsizei*, char* ) = extension_funcs[EXT_glGetShaderSourceARB];
7259   TRACE("(%d, %d, %p, %p)\n", obj, maxLength, length, source );
7260   ENTER_GL();
7261   func_glGetShaderSourceARB( obj, maxLength, length, source );
7262   LEAVE_GL();
7263 }
7264
7265 static void WINAPI wine_glGetShaderiv( GLuint shader, GLenum pname, GLint* params ) {
7266   void (*func_glGetShaderiv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetShaderiv];
7267   TRACE("(%d, %d, %p)\n", shader, pname, params );
7268   ENTER_GL();
7269   func_glGetShaderiv( shader, pname, params );
7270   LEAVE_GL();
7271 }
7272
7273 static void WINAPI wine_glGetSharpenTexFuncSGIS( GLenum target, GLfloat* points ) {
7274   void (*func_glGetSharpenTexFuncSGIS)( GLenum, GLfloat* ) = extension_funcs[EXT_glGetSharpenTexFuncSGIS];
7275   TRACE("(%d, %p)\n", target, points );
7276   ENTER_GL();
7277   func_glGetSharpenTexFuncSGIS( target, points );
7278   LEAVE_GL();
7279 }
7280
7281 static const GLubyte * WINAPI wine_glGetStringi( GLenum name, GLuint index ) {
7282   const GLubyte * ret_value;
7283   const GLubyte * (*func_glGetStringi)( GLenum, GLuint ) = extension_funcs[EXT_glGetStringi];
7284   TRACE("(%d, %d)\n", name, index );
7285   ENTER_GL();
7286   ret_value = func_glGetStringi( name, index );
7287   LEAVE_GL();
7288   return ret_value;
7289 }
7290
7291 static GLuint WINAPI wine_glGetSubroutineIndex( GLuint program, GLenum shadertype, char* name ) {
7292   GLuint ret_value;
7293   GLuint (*func_glGetSubroutineIndex)( GLuint, GLenum, char* ) = extension_funcs[EXT_glGetSubroutineIndex];
7294   TRACE("(%d, %d, %p)\n", program, shadertype, name );
7295   ENTER_GL();
7296   ret_value = func_glGetSubroutineIndex( program, shadertype, name );
7297   LEAVE_GL();
7298   return ret_value;
7299 }
7300
7301 static GLint WINAPI wine_glGetSubroutineUniformLocation( GLuint program, GLenum shadertype, char* name ) {
7302   GLint ret_value;
7303   GLint (*func_glGetSubroutineUniformLocation)( GLuint, GLenum, char* ) = extension_funcs[EXT_glGetSubroutineUniformLocation];
7304   TRACE("(%d, %d, %p)\n", program, shadertype, name );
7305   ENTER_GL();
7306   ret_value = func_glGetSubroutineUniformLocation( program, shadertype, name );
7307   LEAVE_GL();
7308   return ret_value;
7309 }
7310
7311 static void WINAPI wine_glGetSynciv( GLvoid* sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values ) {
7312   void (*func_glGetSynciv)( GLvoid*, GLenum, GLsizei, GLsizei*, GLint* ) = extension_funcs[EXT_glGetSynciv];
7313   TRACE("(%p, %d, %d, %p, %p)\n", sync, pname, bufSize, length, values );
7314   ENTER_GL();
7315   func_glGetSynciv( sync, pname, bufSize, length, values );
7316   LEAVE_GL();
7317 }
7318
7319 static void WINAPI wine_glGetTexBumpParameterfvATI( GLenum pname, GLfloat* param ) {
7320   void (*func_glGetTexBumpParameterfvATI)( GLenum, GLfloat* ) = extension_funcs[EXT_glGetTexBumpParameterfvATI];
7321   TRACE("(%d, %p)\n", pname, param );
7322   ENTER_GL();
7323   func_glGetTexBumpParameterfvATI( pname, param );
7324   LEAVE_GL();
7325 }
7326
7327 static void WINAPI wine_glGetTexBumpParameterivATI( GLenum pname, GLint* param ) {
7328   void (*func_glGetTexBumpParameterivATI)( GLenum, GLint* ) = extension_funcs[EXT_glGetTexBumpParameterivATI];
7329   TRACE("(%d, %p)\n", pname, param );
7330   ENTER_GL();
7331   func_glGetTexBumpParameterivATI( pname, param );
7332   LEAVE_GL();
7333 }
7334
7335 static void WINAPI wine_glGetTexFilterFuncSGIS( GLenum target, GLenum filter, GLfloat* weights ) {
7336   void (*func_glGetTexFilterFuncSGIS)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetTexFilterFuncSGIS];
7337   TRACE("(%d, %d, %p)\n", target, filter, weights );
7338   ENTER_GL();
7339   func_glGetTexFilterFuncSGIS( target, filter, weights );
7340   LEAVE_GL();
7341 }
7342
7343 static void WINAPI wine_glGetTexParameterIiv( GLenum target, GLenum pname, GLint* params ) {
7344   void (*func_glGetTexParameterIiv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetTexParameterIiv];
7345   TRACE("(%d, %d, %p)\n", target, pname, params );
7346   ENTER_GL();
7347   func_glGetTexParameterIiv( target, pname, params );
7348   LEAVE_GL();
7349 }
7350
7351 static void WINAPI wine_glGetTexParameterIivEXT( GLenum target, GLenum pname, GLint* params ) {
7352   void (*func_glGetTexParameterIivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetTexParameterIivEXT];
7353   TRACE("(%d, %d, %p)\n", target, pname, params );
7354   ENTER_GL();
7355   func_glGetTexParameterIivEXT( target, pname, params );
7356   LEAVE_GL();
7357 }
7358
7359 static void WINAPI wine_glGetTexParameterIuiv( GLenum target, GLenum pname, GLuint* params ) {
7360   void (*func_glGetTexParameterIuiv)( GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glGetTexParameterIuiv];
7361   TRACE("(%d, %d, %p)\n", target, pname, params );
7362   ENTER_GL();
7363   func_glGetTexParameterIuiv( target, pname, params );
7364   LEAVE_GL();
7365 }
7366
7367 static void WINAPI wine_glGetTexParameterIuivEXT( GLenum target, GLenum pname, GLuint* params ) {
7368   void (*func_glGetTexParameterIuivEXT)( GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glGetTexParameterIuivEXT];
7369   TRACE("(%d, %d, %p)\n", target, pname, params );
7370   ENTER_GL();
7371   func_glGetTexParameterIuivEXT( target, pname, params );
7372   LEAVE_GL();
7373 }
7374
7375 static void WINAPI wine_glGetTexParameterPointervAPPLE( GLenum target, GLenum pname, GLvoid** params ) {
7376   void (*func_glGetTexParameterPointervAPPLE)( GLenum, GLenum, GLvoid** ) = extension_funcs[EXT_glGetTexParameterPointervAPPLE];
7377   TRACE("(%d, %d, %p)\n", target, pname, params );
7378   ENTER_GL();
7379   func_glGetTexParameterPointervAPPLE( target, pname, params );
7380   LEAVE_GL();
7381 }
7382
7383 static void WINAPI wine_glGetTextureImageEXT( GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, GLvoid* pixels ) {
7384   void (*func_glGetTextureImageEXT)( GLuint, GLenum, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glGetTextureImageEXT];
7385   TRACE("(%d, %d, %d, %d, %d, %p)\n", texture, target, level, format, type, pixels );
7386   ENTER_GL();
7387   func_glGetTextureImageEXT( texture, target, level, format, type, pixels );
7388   LEAVE_GL();
7389 }
7390
7391 static void WINAPI wine_glGetTextureLevelParameterfvEXT( GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat* params ) {
7392   void (*func_glGetTextureLevelParameterfvEXT)( GLuint, GLenum, GLint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetTextureLevelParameterfvEXT];
7393   TRACE("(%d, %d, %d, %d, %p)\n", texture, target, level, pname, params );
7394   ENTER_GL();
7395   func_glGetTextureLevelParameterfvEXT( texture, target, level, pname, params );
7396   LEAVE_GL();
7397 }
7398
7399 static void WINAPI wine_glGetTextureLevelParameterivEXT( GLuint texture, GLenum target, GLint level, GLenum pname, GLint* params ) {
7400   void (*func_glGetTextureLevelParameterivEXT)( GLuint, GLenum, GLint, GLenum, GLint* ) = extension_funcs[EXT_glGetTextureLevelParameterivEXT];
7401   TRACE("(%d, %d, %d, %d, %p)\n", texture, target, level, pname, params );
7402   ENTER_GL();
7403   func_glGetTextureLevelParameterivEXT( texture, target, level, pname, params );
7404   LEAVE_GL();
7405 }
7406
7407 static void WINAPI wine_glGetTextureParameterIivEXT( GLuint texture, GLenum target, GLenum pname, GLint* params ) {
7408   void (*func_glGetTextureParameterIivEXT)( GLuint, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetTextureParameterIivEXT];
7409   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
7410   ENTER_GL();
7411   func_glGetTextureParameterIivEXT( texture, target, pname, params );
7412   LEAVE_GL();
7413 }
7414
7415 static void WINAPI wine_glGetTextureParameterIuivEXT( GLuint texture, GLenum target, GLenum pname, GLuint* params ) {
7416   void (*func_glGetTextureParameterIuivEXT)( GLuint, GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glGetTextureParameterIuivEXT];
7417   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
7418   ENTER_GL();
7419   func_glGetTextureParameterIuivEXT( texture, target, pname, params );
7420   LEAVE_GL();
7421 }
7422
7423 static void WINAPI wine_glGetTextureParameterfvEXT( GLuint texture, GLenum target, GLenum pname, GLfloat* params ) {
7424   void (*func_glGetTextureParameterfvEXT)( GLuint, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glGetTextureParameterfvEXT];
7425   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
7426   ENTER_GL();
7427   func_glGetTextureParameterfvEXT( texture, target, pname, params );
7428   LEAVE_GL();
7429 }
7430
7431 static void WINAPI wine_glGetTextureParameterivEXT( GLuint texture, GLenum target, GLenum pname, GLint* params ) {
7432   void (*func_glGetTextureParameterivEXT)( GLuint, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glGetTextureParameterivEXT];
7433   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
7434   ENTER_GL();
7435   func_glGetTextureParameterivEXT( texture, target, pname, params );
7436   LEAVE_GL();
7437 }
7438
7439 static void WINAPI wine_glGetTrackMatrixivNV( GLenum target, GLuint address, GLenum pname, GLint* params ) {
7440   void (*func_glGetTrackMatrixivNV)( GLenum, GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetTrackMatrixivNV];
7441   TRACE("(%d, %d, %d, %p)\n", target, address, pname, params );
7442   ENTER_GL();
7443   func_glGetTrackMatrixivNV( target, address, pname, params );
7444   LEAVE_GL();
7445 }
7446
7447 static void WINAPI wine_glGetTransformFeedbackVarying( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, char* name ) {
7448   void (*func_glGetTransformFeedbackVarying)( GLuint, GLuint, GLsizei, GLsizei*, GLsizei*, GLenum*, char* ) = extension_funcs[EXT_glGetTransformFeedbackVarying];
7449   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
7450   ENTER_GL();
7451   func_glGetTransformFeedbackVarying( program, index, bufSize, length, size, type, name );
7452   LEAVE_GL();
7453 }
7454
7455 static void WINAPI wine_glGetTransformFeedbackVaryingEXT( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, char* name ) {
7456   void (*func_glGetTransformFeedbackVaryingEXT)( GLuint, GLuint, GLsizei, GLsizei*, GLsizei*, GLenum*, char* ) = extension_funcs[EXT_glGetTransformFeedbackVaryingEXT];
7457   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
7458   ENTER_GL();
7459   func_glGetTransformFeedbackVaryingEXT( program, index, bufSize, length, size, type, name );
7460   LEAVE_GL();
7461 }
7462
7463 static void WINAPI wine_glGetTransformFeedbackVaryingNV( GLuint program, GLuint index, GLint* location ) {
7464   void (*func_glGetTransformFeedbackVaryingNV)( GLuint, GLuint, GLint* ) = extension_funcs[EXT_glGetTransformFeedbackVaryingNV];
7465   TRACE("(%d, %d, %p)\n", program, index, location );
7466   ENTER_GL();
7467   func_glGetTransformFeedbackVaryingNV( program, index, location );
7468   LEAVE_GL();
7469 }
7470
7471 static GLuint WINAPI wine_glGetUniformBlockIndex( GLuint program, char* uniformBlockName ) {
7472   GLuint ret_value;
7473   GLuint (*func_glGetUniformBlockIndex)( GLuint, char* ) = extension_funcs[EXT_glGetUniformBlockIndex];
7474   TRACE("(%d, %p)\n", program, uniformBlockName );
7475   ENTER_GL();
7476   ret_value = func_glGetUniformBlockIndex( program, uniformBlockName );
7477   LEAVE_GL();
7478   return ret_value;
7479 }
7480
7481 static GLint WINAPI wine_glGetUniformBufferSizeEXT( GLuint program, GLint location ) {
7482   GLint ret_value;
7483   GLint (*func_glGetUniformBufferSizeEXT)( GLuint, GLint ) = extension_funcs[EXT_glGetUniformBufferSizeEXT];
7484   TRACE("(%d, %d)\n", program, location );
7485   ENTER_GL();
7486   ret_value = func_glGetUniformBufferSizeEXT( program, location );
7487   LEAVE_GL();
7488   return ret_value;
7489 }
7490
7491 static void WINAPI wine_glGetUniformIndices( GLuint program, GLsizei uniformCount, char** uniformNames, GLuint* uniformIndices ) {
7492   void (*func_glGetUniformIndices)( GLuint, GLsizei, char**, GLuint* ) = extension_funcs[EXT_glGetUniformIndices];
7493   TRACE("(%d, %d, %p, %p)\n", program, uniformCount, uniformNames, uniformIndices );
7494   ENTER_GL();
7495   func_glGetUniformIndices( program, uniformCount, uniformNames, uniformIndices );
7496   LEAVE_GL();
7497 }
7498
7499 static GLint WINAPI wine_glGetUniformLocation( GLuint program, char* name ) {
7500   GLint ret_value;
7501   GLint (*func_glGetUniformLocation)( GLuint, char* ) = extension_funcs[EXT_glGetUniformLocation];
7502   TRACE("(%d, %p)\n", program, name );
7503   ENTER_GL();
7504   ret_value = func_glGetUniformLocation( program, name );
7505   LEAVE_GL();
7506   return ret_value;
7507 }
7508
7509 static GLint WINAPI wine_glGetUniformLocationARB( unsigned int programObj, char* name ) {
7510   GLint ret_value;
7511   GLint (*func_glGetUniformLocationARB)( unsigned int, char* ) = extension_funcs[EXT_glGetUniformLocationARB];
7512   TRACE("(%d, %p)\n", programObj, name );
7513   ENTER_GL();
7514   ret_value = func_glGetUniformLocationARB( programObj, name );
7515   LEAVE_GL();
7516   return ret_value;
7517 }
7518
7519 static INT_PTR WINAPI wine_glGetUniformOffsetEXT( GLuint program, GLint location ) {
7520   INT_PTR ret_value;
7521   INT_PTR (*func_glGetUniformOffsetEXT)( GLuint, GLint ) = extension_funcs[EXT_glGetUniformOffsetEXT];
7522   TRACE("(%d, %d)\n", program, location );
7523   ENTER_GL();
7524   ret_value = func_glGetUniformOffsetEXT( program, location );
7525   LEAVE_GL();
7526   return ret_value;
7527 }
7528
7529 static void WINAPI wine_glGetUniformSubroutineuiv( GLenum shadertype, GLint location, GLuint* params ) {
7530   void (*func_glGetUniformSubroutineuiv)( GLenum, GLint, GLuint* ) = extension_funcs[EXT_glGetUniformSubroutineuiv];
7531   TRACE("(%d, %d, %p)\n", shadertype, location, params );
7532   ENTER_GL();
7533   func_glGetUniformSubroutineuiv( shadertype, location, params );
7534   LEAVE_GL();
7535 }
7536
7537 static void WINAPI wine_glGetUniformdv( GLuint program, GLint location, GLdouble* params ) {
7538   void (*func_glGetUniformdv)( GLuint, GLint, GLdouble* ) = extension_funcs[EXT_glGetUniformdv];
7539   TRACE("(%d, %d, %p)\n", program, location, params );
7540   ENTER_GL();
7541   func_glGetUniformdv( program, location, params );
7542   LEAVE_GL();
7543 }
7544
7545 static void WINAPI wine_glGetUniformfv( GLuint program, GLint location, GLfloat* params ) {
7546   void (*func_glGetUniformfv)( GLuint, GLint, GLfloat* ) = extension_funcs[EXT_glGetUniformfv];
7547   TRACE("(%d, %d, %p)\n", program, location, params );
7548   ENTER_GL();
7549   func_glGetUniformfv( program, location, params );
7550   LEAVE_GL();
7551 }
7552
7553 static void WINAPI wine_glGetUniformfvARB( unsigned int programObj, GLint location, GLfloat* params ) {
7554   void (*func_glGetUniformfvARB)( unsigned int, GLint, GLfloat* ) = extension_funcs[EXT_glGetUniformfvARB];
7555   TRACE("(%d, %d, %p)\n", programObj, location, params );
7556   ENTER_GL();
7557   func_glGetUniformfvARB( programObj, location, params );
7558   LEAVE_GL();
7559 }
7560
7561 static void WINAPI wine_glGetUniformi64vNV( GLuint program, GLint location, INT64* params ) {
7562   void (*func_glGetUniformi64vNV)( GLuint, GLint, INT64* ) = extension_funcs[EXT_glGetUniformi64vNV];
7563   TRACE("(%d, %d, %p)\n", program, location, params );
7564   ENTER_GL();
7565   func_glGetUniformi64vNV( program, location, params );
7566   LEAVE_GL();
7567 }
7568
7569 static void WINAPI wine_glGetUniformiv( GLuint program, GLint location, GLint* params ) {
7570   void (*func_glGetUniformiv)( GLuint, GLint, GLint* ) = extension_funcs[EXT_glGetUniformiv];
7571   TRACE("(%d, %d, %p)\n", program, location, params );
7572   ENTER_GL();
7573   func_glGetUniformiv( program, location, params );
7574   LEAVE_GL();
7575 }
7576
7577 static void WINAPI wine_glGetUniformivARB( unsigned int programObj, GLint location, GLint* params ) {
7578   void (*func_glGetUniformivARB)( unsigned int, GLint, GLint* ) = extension_funcs[EXT_glGetUniformivARB];
7579   TRACE("(%d, %d, %p)\n", programObj, location, params );
7580   ENTER_GL();
7581   func_glGetUniformivARB( programObj, location, params );
7582   LEAVE_GL();
7583 }
7584
7585 static void WINAPI wine_glGetUniformui64vNV( GLuint program, GLint location, UINT64* params ) {
7586   void (*func_glGetUniformui64vNV)( GLuint, GLint, UINT64* ) = extension_funcs[EXT_glGetUniformui64vNV];
7587   TRACE("(%d, %d, %p)\n", program, location, params );
7588   ENTER_GL();
7589   func_glGetUniformui64vNV( program, location, params );
7590   LEAVE_GL();
7591 }
7592
7593 static void WINAPI wine_glGetUniformuiv( GLuint program, GLint location, GLuint* params ) {
7594   void (*func_glGetUniformuiv)( GLuint, GLint, GLuint* ) = extension_funcs[EXT_glGetUniformuiv];
7595   TRACE("(%d, %d, %p)\n", program, location, params );
7596   ENTER_GL();
7597   func_glGetUniformuiv( program, location, params );
7598   LEAVE_GL();
7599 }
7600
7601 static void WINAPI wine_glGetUniformuivEXT( GLuint program, GLint location, GLuint* params ) {
7602   void (*func_glGetUniformuivEXT)( GLuint, GLint, GLuint* ) = extension_funcs[EXT_glGetUniformuivEXT];
7603   TRACE("(%d, %d, %p)\n", program, location, params );
7604   ENTER_GL();
7605   func_glGetUniformuivEXT( program, location, params );
7606   LEAVE_GL();
7607 }
7608
7609 static void WINAPI wine_glGetVariantArrayObjectfvATI( GLuint id, GLenum pname, GLfloat* params ) {
7610   void (*func_glGetVariantArrayObjectfvATI)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetVariantArrayObjectfvATI];
7611   TRACE("(%d, %d, %p)\n", id, pname, params );
7612   ENTER_GL();
7613   func_glGetVariantArrayObjectfvATI( id, pname, params );
7614   LEAVE_GL();
7615 }
7616
7617 static void WINAPI wine_glGetVariantArrayObjectivATI( GLuint id, GLenum pname, GLint* params ) {
7618   void (*func_glGetVariantArrayObjectivATI)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVariantArrayObjectivATI];
7619   TRACE("(%d, %d, %p)\n", id, pname, params );
7620   ENTER_GL();
7621   func_glGetVariantArrayObjectivATI( id, pname, params );
7622   LEAVE_GL();
7623 }
7624
7625 static void WINAPI wine_glGetVariantBooleanvEXT( GLuint id, GLenum value, GLboolean* data ) {
7626   void (*func_glGetVariantBooleanvEXT)( GLuint, GLenum, GLboolean* ) = extension_funcs[EXT_glGetVariantBooleanvEXT];
7627   TRACE("(%d, %d, %p)\n", id, value, data );
7628   ENTER_GL();
7629   func_glGetVariantBooleanvEXT( id, value, data );
7630   LEAVE_GL();
7631 }
7632
7633 static void WINAPI wine_glGetVariantFloatvEXT( GLuint id, GLenum value, GLfloat* data ) {
7634   void (*func_glGetVariantFloatvEXT)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetVariantFloatvEXT];
7635   TRACE("(%d, %d, %p)\n", id, value, data );
7636   ENTER_GL();
7637   func_glGetVariantFloatvEXT( id, value, data );
7638   LEAVE_GL();
7639 }
7640
7641 static void WINAPI wine_glGetVariantIntegervEXT( GLuint id, GLenum value, GLint* data ) {
7642   void (*func_glGetVariantIntegervEXT)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVariantIntegervEXT];
7643   TRACE("(%d, %d, %p)\n", id, value, data );
7644   ENTER_GL();
7645   func_glGetVariantIntegervEXT( id, value, data );
7646   LEAVE_GL();
7647 }
7648
7649 static void WINAPI wine_glGetVariantPointervEXT( GLuint id, GLenum value, GLvoid** data ) {
7650   void (*func_glGetVariantPointervEXT)( GLuint, GLenum, GLvoid** ) = extension_funcs[EXT_glGetVariantPointervEXT];
7651   TRACE("(%d, %d, %p)\n", id, value, data );
7652   ENTER_GL();
7653   func_glGetVariantPointervEXT( id, value, data );
7654   LEAVE_GL();
7655 }
7656
7657 static GLint WINAPI wine_glGetVaryingLocationNV( GLuint program, char* name ) {
7658   GLint ret_value;
7659   GLint (*func_glGetVaryingLocationNV)( GLuint, char* ) = extension_funcs[EXT_glGetVaryingLocationNV];
7660   TRACE("(%d, %p)\n", program, name );
7661   ENTER_GL();
7662   ret_value = func_glGetVaryingLocationNV( program, name );
7663   LEAVE_GL();
7664   return ret_value;
7665 }
7666
7667 static void WINAPI wine_glGetVertexAttribArrayObjectfvATI( GLuint index, GLenum pname, GLfloat* params ) {
7668   void (*func_glGetVertexAttribArrayObjectfvATI)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetVertexAttribArrayObjectfvATI];
7669   TRACE("(%d, %d, %p)\n", index, pname, params );
7670   ENTER_GL();
7671   func_glGetVertexAttribArrayObjectfvATI( index, pname, params );
7672   LEAVE_GL();
7673 }
7674
7675 static void WINAPI wine_glGetVertexAttribArrayObjectivATI( GLuint index, GLenum pname, GLint* params ) {
7676   void (*func_glGetVertexAttribArrayObjectivATI)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVertexAttribArrayObjectivATI];
7677   TRACE("(%d, %d, %p)\n", index, pname, params );
7678   ENTER_GL();
7679   func_glGetVertexAttribArrayObjectivATI( index, pname, params );
7680   LEAVE_GL();
7681 }
7682
7683 static void WINAPI wine_glGetVertexAttribIiv( GLuint index, GLenum pname, GLint* params ) {
7684   void (*func_glGetVertexAttribIiv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVertexAttribIiv];
7685   TRACE("(%d, %d, %p)\n", index, pname, params );
7686   ENTER_GL();
7687   func_glGetVertexAttribIiv( index, pname, params );
7688   LEAVE_GL();
7689 }
7690
7691 static void WINAPI wine_glGetVertexAttribIivEXT( GLuint index, GLenum pname, GLint* params ) {
7692   void (*func_glGetVertexAttribIivEXT)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVertexAttribIivEXT];
7693   TRACE("(%d, %d, %p)\n", index, pname, params );
7694   ENTER_GL();
7695   func_glGetVertexAttribIivEXT( index, pname, params );
7696   LEAVE_GL();
7697 }
7698
7699 static void WINAPI wine_glGetVertexAttribIuiv( GLuint index, GLenum pname, GLuint* params ) {
7700   void (*func_glGetVertexAttribIuiv)( GLuint, GLenum, GLuint* ) = extension_funcs[EXT_glGetVertexAttribIuiv];
7701   TRACE("(%d, %d, %p)\n", index, pname, params );
7702   ENTER_GL();
7703   func_glGetVertexAttribIuiv( index, pname, params );
7704   LEAVE_GL();
7705 }
7706
7707 static void WINAPI wine_glGetVertexAttribIuivEXT( GLuint index, GLenum pname, GLuint* params ) {
7708   void (*func_glGetVertexAttribIuivEXT)( GLuint, GLenum, GLuint* ) = extension_funcs[EXT_glGetVertexAttribIuivEXT];
7709   TRACE("(%d, %d, %p)\n", index, pname, params );
7710   ENTER_GL();
7711   func_glGetVertexAttribIuivEXT( index, pname, params );
7712   LEAVE_GL();
7713 }
7714
7715 static void WINAPI wine_glGetVertexAttribLdv( GLuint index, GLenum pname, GLdouble* params ) {
7716   void (*func_glGetVertexAttribLdv)( GLuint, GLenum, GLdouble* ) = extension_funcs[EXT_glGetVertexAttribLdv];
7717   TRACE("(%d, %d, %p)\n", index, pname, params );
7718   ENTER_GL();
7719   func_glGetVertexAttribLdv( index, pname, params );
7720   LEAVE_GL();
7721 }
7722
7723 static void WINAPI wine_glGetVertexAttribLdvEXT( GLuint index, GLenum pname, GLdouble* params ) {
7724   void (*func_glGetVertexAttribLdvEXT)( GLuint, GLenum, GLdouble* ) = extension_funcs[EXT_glGetVertexAttribLdvEXT];
7725   TRACE("(%d, %d, %p)\n", index, pname, params );
7726   ENTER_GL();
7727   func_glGetVertexAttribLdvEXT( index, pname, params );
7728   LEAVE_GL();
7729 }
7730
7731 static void WINAPI wine_glGetVertexAttribLi64vNV( GLuint index, GLenum pname, INT64* params ) {
7732   void (*func_glGetVertexAttribLi64vNV)( GLuint, GLenum, INT64* ) = extension_funcs[EXT_glGetVertexAttribLi64vNV];
7733   TRACE("(%d, %d, %p)\n", index, pname, params );
7734   ENTER_GL();
7735   func_glGetVertexAttribLi64vNV( index, pname, params );
7736   LEAVE_GL();
7737 }
7738
7739 static void WINAPI wine_glGetVertexAttribLui64vNV( GLuint index, GLenum pname, UINT64* params ) {
7740   void (*func_glGetVertexAttribLui64vNV)( GLuint, GLenum, UINT64* ) = extension_funcs[EXT_glGetVertexAttribLui64vNV];
7741   TRACE("(%d, %d, %p)\n", index, pname, params );
7742   ENTER_GL();
7743   func_glGetVertexAttribLui64vNV( index, pname, params );
7744   LEAVE_GL();
7745 }
7746
7747 static void WINAPI wine_glGetVertexAttribPointerv( GLuint index, GLenum pname, GLvoid** pointer ) {
7748   void (*func_glGetVertexAttribPointerv)( GLuint, GLenum, GLvoid** ) = extension_funcs[EXT_glGetVertexAttribPointerv];
7749   TRACE("(%d, %d, %p)\n", index, pname, pointer );
7750   ENTER_GL();
7751   func_glGetVertexAttribPointerv( index, pname, pointer );
7752   LEAVE_GL();
7753 }
7754
7755 static void WINAPI wine_glGetVertexAttribPointervARB( GLuint index, GLenum pname, GLvoid** pointer ) {
7756   void (*func_glGetVertexAttribPointervARB)( GLuint, GLenum, GLvoid** ) = extension_funcs[EXT_glGetVertexAttribPointervARB];
7757   TRACE("(%d, %d, %p)\n", index, pname, pointer );
7758   ENTER_GL();
7759   func_glGetVertexAttribPointervARB( index, pname, pointer );
7760   LEAVE_GL();
7761 }
7762
7763 static void WINAPI wine_glGetVertexAttribPointervNV( GLuint index, GLenum pname, GLvoid** pointer ) {
7764   void (*func_glGetVertexAttribPointervNV)( GLuint, GLenum, GLvoid** ) = extension_funcs[EXT_glGetVertexAttribPointervNV];
7765   TRACE("(%d, %d, %p)\n", index, pname, pointer );
7766   ENTER_GL();
7767   func_glGetVertexAttribPointervNV( index, pname, pointer );
7768   LEAVE_GL();
7769 }
7770
7771 static void WINAPI wine_glGetVertexAttribdv( GLuint index, GLenum pname, GLdouble* params ) {
7772   void (*func_glGetVertexAttribdv)( GLuint, GLenum, GLdouble* ) = extension_funcs[EXT_glGetVertexAttribdv];
7773   TRACE("(%d, %d, %p)\n", index, pname, params );
7774   ENTER_GL();
7775   func_glGetVertexAttribdv( index, pname, params );
7776   LEAVE_GL();
7777 }
7778
7779 static void WINAPI wine_glGetVertexAttribdvARB( GLuint index, GLenum pname, GLdouble* params ) {
7780   void (*func_glGetVertexAttribdvARB)( GLuint, GLenum, GLdouble* ) = extension_funcs[EXT_glGetVertexAttribdvARB];
7781   TRACE("(%d, %d, %p)\n", index, pname, params );
7782   ENTER_GL();
7783   func_glGetVertexAttribdvARB( index, pname, params );
7784   LEAVE_GL();
7785 }
7786
7787 static void WINAPI wine_glGetVertexAttribdvNV( GLuint index, GLenum pname, GLdouble* params ) {
7788   void (*func_glGetVertexAttribdvNV)( GLuint, GLenum, GLdouble* ) = extension_funcs[EXT_glGetVertexAttribdvNV];
7789   TRACE("(%d, %d, %p)\n", index, pname, params );
7790   ENTER_GL();
7791   func_glGetVertexAttribdvNV( index, pname, params );
7792   LEAVE_GL();
7793 }
7794
7795 static void WINAPI wine_glGetVertexAttribfv( GLuint index, GLenum pname, GLfloat* params ) {
7796   void (*func_glGetVertexAttribfv)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetVertexAttribfv];
7797   TRACE("(%d, %d, %p)\n", index, pname, params );
7798   ENTER_GL();
7799   func_glGetVertexAttribfv( index, pname, params );
7800   LEAVE_GL();
7801 }
7802
7803 static void WINAPI wine_glGetVertexAttribfvARB( GLuint index, GLenum pname, GLfloat* params ) {
7804   void (*func_glGetVertexAttribfvARB)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetVertexAttribfvARB];
7805   TRACE("(%d, %d, %p)\n", index, pname, params );
7806   ENTER_GL();
7807   func_glGetVertexAttribfvARB( index, pname, params );
7808   LEAVE_GL();
7809 }
7810
7811 static void WINAPI wine_glGetVertexAttribfvNV( GLuint index, GLenum pname, GLfloat* params ) {
7812   void (*func_glGetVertexAttribfvNV)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetVertexAttribfvNV];
7813   TRACE("(%d, %d, %p)\n", index, pname, params );
7814   ENTER_GL();
7815   func_glGetVertexAttribfvNV( index, pname, params );
7816   LEAVE_GL();
7817 }
7818
7819 static void WINAPI wine_glGetVertexAttribiv( GLuint index, GLenum pname, GLint* params ) {
7820   void (*func_glGetVertexAttribiv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVertexAttribiv];
7821   TRACE("(%d, %d, %p)\n", index, pname, params );
7822   ENTER_GL();
7823   func_glGetVertexAttribiv( index, pname, params );
7824   LEAVE_GL();
7825 }
7826
7827 static void WINAPI wine_glGetVertexAttribivARB( GLuint index, GLenum pname, GLint* params ) {
7828   void (*func_glGetVertexAttribivARB)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVertexAttribivARB];
7829   TRACE("(%d, %d, %p)\n", index, pname, params );
7830   ENTER_GL();
7831   func_glGetVertexAttribivARB( index, pname, params );
7832   LEAVE_GL();
7833 }
7834
7835 static void WINAPI wine_glGetVertexAttribivNV( GLuint index, GLenum pname, GLint* params ) {
7836   void (*func_glGetVertexAttribivNV)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVertexAttribivNV];
7837   TRACE("(%d, %d, %p)\n", index, pname, params );
7838   ENTER_GL();
7839   func_glGetVertexAttribivNV( index, pname, params );
7840   LEAVE_GL();
7841 }
7842
7843 static void WINAPI wine_glGetVideoCaptureStreamdvNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble* params ) {
7844   void (*func_glGetVideoCaptureStreamdvNV)( GLuint, GLuint, GLenum, GLdouble* ) = extension_funcs[EXT_glGetVideoCaptureStreamdvNV];
7845   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
7846   ENTER_GL();
7847   func_glGetVideoCaptureStreamdvNV( video_capture_slot, stream, pname, params );
7848   LEAVE_GL();
7849 }
7850
7851 static void WINAPI wine_glGetVideoCaptureStreamfvNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat* params ) {
7852   void (*func_glGetVideoCaptureStreamfvNV)( GLuint, GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glGetVideoCaptureStreamfvNV];
7853   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
7854   ENTER_GL();
7855   func_glGetVideoCaptureStreamfvNV( video_capture_slot, stream, pname, params );
7856   LEAVE_GL();
7857 }
7858
7859 static void WINAPI wine_glGetVideoCaptureStreamivNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLint* params ) {
7860   void (*func_glGetVideoCaptureStreamivNV)( GLuint, GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVideoCaptureStreamivNV];
7861   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
7862   ENTER_GL();
7863   func_glGetVideoCaptureStreamivNV( video_capture_slot, stream, pname, params );
7864   LEAVE_GL();
7865 }
7866
7867 static void WINAPI wine_glGetVideoCaptureivNV( GLuint video_capture_slot, GLenum pname, GLint* params ) {
7868   void (*func_glGetVideoCaptureivNV)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVideoCaptureivNV];
7869   TRACE("(%d, %d, %p)\n", video_capture_slot, pname, params );
7870   ENTER_GL();
7871   func_glGetVideoCaptureivNV( video_capture_slot, pname, params );
7872   LEAVE_GL();
7873 }
7874
7875 static void WINAPI wine_glGetVideoi64vNV( GLuint video_slot, GLenum pname, INT64* params ) {
7876   void (*func_glGetVideoi64vNV)( GLuint, GLenum, INT64* ) = extension_funcs[EXT_glGetVideoi64vNV];
7877   TRACE("(%d, %d, %p)\n", video_slot, pname, params );
7878   ENTER_GL();
7879   func_glGetVideoi64vNV( video_slot, pname, params );
7880   LEAVE_GL();
7881 }
7882
7883 static void WINAPI wine_glGetVideoivNV( GLuint video_slot, GLenum pname, GLint* params ) {
7884   void (*func_glGetVideoivNV)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glGetVideoivNV];
7885   TRACE("(%d, %d, %p)\n", video_slot, pname, params );
7886   ENTER_GL();
7887   func_glGetVideoivNV( video_slot, pname, params );
7888   LEAVE_GL();
7889 }
7890
7891 static void WINAPI wine_glGetVideoui64vNV( GLuint video_slot, GLenum pname, UINT64* params ) {
7892   void (*func_glGetVideoui64vNV)( GLuint, GLenum, UINT64* ) = extension_funcs[EXT_glGetVideoui64vNV];
7893   TRACE("(%d, %d, %p)\n", video_slot, pname, params );
7894   ENTER_GL();
7895   func_glGetVideoui64vNV( video_slot, pname, params );
7896   LEAVE_GL();
7897 }
7898
7899 static void WINAPI wine_glGetVideouivNV( GLuint video_slot, GLenum pname, GLuint* params ) {
7900   void (*func_glGetVideouivNV)( GLuint, GLenum, GLuint* ) = extension_funcs[EXT_glGetVideouivNV];
7901   TRACE("(%d, %d, %p)\n", video_slot, pname, params );
7902   ENTER_GL();
7903   func_glGetVideouivNV( video_slot, pname, params );
7904   LEAVE_GL();
7905 }
7906
7907 static void WINAPI wine_glGetnColorTableARB( GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid* table ) {
7908   void (*func_glGetnColorTableARB)( GLenum, GLenum, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glGetnColorTableARB];
7909   TRACE("(%d, %d, %d, %d, %p)\n", target, format, type, bufSize, table );
7910   ENTER_GL();
7911   func_glGetnColorTableARB( target, format, type, bufSize, table );
7912   LEAVE_GL();
7913 }
7914
7915 static void WINAPI wine_glGetnCompressedTexImageARB( GLenum target, GLint lod, GLsizei bufSize, GLvoid* img ) {
7916   void (*func_glGetnCompressedTexImageARB)( GLenum, GLint, GLsizei, GLvoid* ) = extension_funcs[EXT_glGetnCompressedTexImageARB];
7917   TRACE("(%d, %d, %d, %p)\n", target, lod, bufSize, img );
7918   ENTER_GL();
7919   func_glGetnCompressedTexImageARB( target, lod, bufSize, img );
7920   LEAVE_GL();
7921 }
7922
7923 static void WINAPI wine_glGetnConvolutionFilterARB( GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid* image ) {
7924   void (*func_glGetnConvolutionFilterARB)( GLenum, GLenum, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glGetnConvolutionFilterARB];
7925   TRACE("(%d, %d, %d, %d, %p)\n", target, format, type, bufSize, image );
7926   ENTER_GL();
7927   func_glGetnConvolutionFilterARB( target, format, type, bufSize, image );
7928   LEAVE_GL();
7929 }
7930
7931 static void WINAPI wine_glGetnHistogramARB( GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid* values ) {
7932   void (*func_glGetnHistogramARB)( GLenum, GLboolean, GLenum, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glGetnHistogramARB];
7933   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, reset, format, type, bufSize, values );
7934   ENTER_GL();
7935   func_glGetnHistogramARB( target, reset, format, type, bufSize, values );
7936   LEAVE_GL();
7937 }
7938
7939 static void WINAPI wine_glGetnMapdvARB( GLenum target, GLenum query, GLsizei bufSize, GLdouble* v ) {
7940   void (*func_glGetnMapdvARB)( GLenum, GLenum, GLsizei, GLdouble* ) = extension_funcs[EXT_glGetnMapdvARB];
7941   TRACE("(%d, %d, %d, %p)\n", target, query, bufSize, v );
7942   ENTER_GL();
7943   func_glGetnMapdvARB( target, query, bufSize, v );
7944   LEAVE_GL();
7945 }
7946
7947 static void WINAPI wine_glGetnMapfvARB( GLenum target, GLenum query, GLsizei bufSize, GLfloat* v ) {
7948   void (*func_glGetnMapfvARB)( GLenum, GLenum, GLsizei, GLfloat* ) = extension_funcs[EXT_glGetnMapfvARB];
7949   TRACE("(%d, %d, %d, %p)\n", target, query, bufSize, v );
7950   ENTER_GL();
7951   func_glGetnMapfvARB( target, query, bufSize, v );
7952   LEAVE_GL();
7953 }
7954
7955 static void WINAPI wine_glGetnMapivARB( GLenum target, GLenum query, GLsizei bufSize, GLint* v ) {
7956   void (*func_glGetnMapivARB)( GLenum, GLenum, GLsizei, GLint* ) = extension_funcs[EXT_glGetnMapivARB];
7957   TRACE("(%d, %d, %d, %p)\n", target, query, bufSize, v );
7958   ENTER_GL();
7959   func_glGetnMapivARB( target, query, bufSize, v );
7960   LEAVE_GL();
7961 }
7962
7963 static void WINAPI wine_glGetnMinmaxARB( GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid* values ) {
7964   void (*func_glGetnMinmaxARB)( GLenum, GLboolean, GLenum, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glGetnMinmaxARB];
7965   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, reset, format, type, bufSize, values );
7966   ENTER_GL();
7967   func_glGetnMinmaxARB( target, reset, format, type, bufSize, values );
7968   LEAVE_GL();
7969 }
7970
7971 static void WINAPI wine_glGetnPixelMapfvARB( GLenum map, GLsizei bufSize, GLfloat* values ) {
7972   void (*func_glGetnPixelMapfvARB)( GLenum, GLsizei, GLfloat* ) = extension_funcs[EXT_glGetnPixelMapfvARB];
7973   TRACE("(%d, %d, %p)\n", map, bufSize, values );
7974   ENTER_GL();
7975   func_glGetnPixelMapfvARB( map, bufSize, values );
7976   LEAVE_GL();
7977 }
7978
7979 static void WINAPI wine_glGetnPixelMapuivARB( GLenum map, GLsizei bufSize, GLuint* values ) {
7980   void (*func_glGetnPixelMapuivARB)( GLenum, GLsizei, GLuint* ) = extension_funcs[EXT_glGetnPixelMapuivARB];
7981   TRACE("(%d, %d, %p)\n", map, bufSize, values );
7982   ENTER_GL();
7983   func_glGetnPixelMapuivARB( map, bufSize, values );
7984   LEAVE_GL();
7985 }
7986
7987 static void WINAPI wine_glGetnPixelMapusvARB( GLenum map, GLsizei bufSize, GLushort* values ) {
7988   void (*func_glGetnPixelMapusvARB)( GLenum, GLsizei, GLushort* ) = extension_funcs[EXT_glGetnPixelMapusvARB];
7989   TRACE("(%d, %d, %p)\n", map, bufSize, values );
7990   ENTER_GL();
7991   func_glGetnPixelMapusvARB( map, bufSize, values );
7992   LEAVE_GL();
7993 }
7994
7995 static void WINAPI wine_glGetnPolygonStippleARB( GLsizei bufSize, GLubyte* pattern ) {
7996   void (*func_glGetnPolygonStippleARB)( GLsizei, GLubyte* ) = extension_funcs[EXT_glGetnPolygonStippleARB];
7997   TRACE("(%d, %p)\n", bufSize, pattern );
7998   ENTER_GL();
7999   func_glGetnPolygonStippleARB( bufSize, pattern );
8000   LEAVE_GL();
8001 }
8002
8003 static void WINAPI wine_glGetnSeparableFilterARB( GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid* row, GLsizei columnBufSize, GLvoid* column, GLvoid* span ) {
8004   void (*func_glGetnSeparableFilterARB)( GLenum, GLenum, GLenum, GLsizei, GLvoid*, GLsizei, GLvoid*, GLvoid* ) = extension_funcs[EXT_glGetnSeparableFilterARB];
8005   TRACE("(%d, %d, %d, %d, %p, %d, %p, %p)\n", target, format, type, rowBufSize, row, columnBufSize, column, span );
8006   ENTER_GL();
8007   func_glGetnSeparableFilterARB( target, format, type, rowBufSize, row, columnBufSize, column, span );
8008   LEAVE_GL();
8009 }
8010
8011 static void WINAPI wine_glGetnTexImageARB( GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid* img ) {
8012   void (*func_glGetnTexImageARB)( GLenum, GLint, GLenum, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glGetnTexImageARB];
8013   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, level, format, type, bufSize, img );
8014   ENTER_GL();
8015   func_glGetnTexImageARB( target, level, format, type, bufSize, img );
8016   LEAVE_GL();
8017 }
8018
8019 static void WINAPI wine_glGetnUniformdvARB( GLuint program, GLint location, GLsizei bufSize, GLdouble* params ) {
8020   void (*func_glGetnUniformdvARB)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glGetnUniformdvARB];
8021   TRACE("(%d, %d, %d, %p)\n", program, location, bufSize, params );
8022   ENTER_GL();
8023   func_glGetnUniformdvARB( program, location, bufSize, params );
8024   LEAVE_GL();
8025 }
8026
8027 static void WINAPI wine_glGetnUniformfvARB( GLuint program, GLint location, GLsizei bufSize, GLfloat* params ) {
8028   void (*func_glGetnUniformfvARB)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glGetnUniformfvARB];
8029   TRACE("(%d, %d, %d, %p)\n", program, location, bufSize, params );
8030   ENTER_GL();
8031   func_glGetnUniformfvARB( program, location, bufSize, params );
8032   LEAVE_GL();
8033 }
8034
8035 static void WINAPI wine_glGetnUniformivARB( GLuint program, GLint location, GLsizei bufSize, GLint* params ) {
8036   void (*func_glGetnUniformivARB)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glGetnUniformivARB];
8037   TRACE("(%d, %d, %d, %p)\n", program, location, bufSize, params );
8038   ENTER_GL();
8039   func_glGetnUniformivARB( program, location, bufSize, params );
8040   LEAVE_GL();
8041 }
8042
8043 static void WINAPI wine_glGetnUniformuivARB( GLuint program, GLint location, GLsizei bufSize, GLuint* params ) {
8044   void (*func_glGetnUniformuivARB)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glGetnUniformuivARB];
8045   TRACE("(%d, %d, %d, %p)\n", program, location, bufSize, params );
8046   ENTER_GL();
8047   func_glGetnUniformuivARB( program, location, bufSize, params );
8048   LEAVE_GL();
8049 }
8050
8051 static void WINAPI wine_glGlobalAlphaFactorbSUN( GLbyte factor ) {
8052   void (*func_glGlobalAlphaFactorbSUN)( GLbyte ) = extension_funcs[EXT_glGlobalAlphaFactorbSUN];
8053   TRACE("(%d)\n", factor );
8054   ENTER_GL();
8055   func_glGlobalAlphaFactorbSUN( factor );
8056   LEAVE_GL();
8057 }
8058
8059 static void WINAPI wine_glGlobalAlphaFactordSUN( GLdouble factor ) {
8060   void (*func_glGlobalAlphaFactordSUN)( GLdouble ) = extension_funcs[EXT_glGlobalAlphaFactordSUN];
8061   TRACE("(%f)\n", factor );
8062   ENTER_GL();
8063   func_glGlobalAlphaFactordSUN( factor );
8064   LEAVE_GL();
8065 }
8066
8067 static void WINAPI wine_glGlobalAlphaFactorfSUN( GLfloat factor ) {
8068   void (*func_glGlobalAlphaFactorfSUN)( GLfloat ) = extension_funcs[EXT_glGlobalAlphaFactorfSUN];
8069   TRACE("(%f)\n", factor );
8070   ENTER_GL();
8071   func_glGlobalAlphaFactorfSUN( factor );
8072   LEAVE_GL();
8073 }
8074
8075 static void WINAPI wine_glGlobalAlphaFactoriSUN( GLint factor ) {
8076   void (*func_glGlobalAlphaFactoriSUN)( GLint ) = extension_funcs[EXT_glGlobalAlphaFactoriSUN];
8077   TRACE("(%d)\n", factor );
8078   ENTER_GL();
8079   func_glGlobalAlphaFactoriSUN( factor );
8080   LEAVE_GL();
8081 }
8082
8083 static void WINAPI wine_glGlobalAlphaFactorsSUN( GLshort factor ) {
8084   void (*func_glGlobalAlphaFactorsSUN)( GLshort ) = extension_funcs[EXT_glGlobalAlphaFactorsSUN];
8085   TRACE("(%d)\n", factor );
8086   ENTER_GL();
8087   func_glGlobalAlphaFactorsSUN( factor );
8088   LEAVE_GL();
8089 }
8090
8091 static void WINAPI wine_glGlobalAlphaFactorubSUN( GLubyte factor ) {
8092   void (*func_glGlobalAlphaFactorubSUN)( GLubyte ) = extension_funcs[EXT_glGlobalAlphaFactorubSUN];
8093   TRACE("(%d)\n", factor );
8094   ENTER_GL();
8095   func_glGlobalAlphaFactorubSUN( factor );
8096   LEAVE_GL();
8097 }
8098
8099 static void WINAPI wine_glGlobalAlphaFactoruiSUN( GLuint factor ) {
8100   void (*func_glGlobalAlphaFactoruiSUN)( GLuint ) = extension_funcs[EXT_glGlobalAlphaFactoruiSUN];
8101   TRACE("(%d)\n", factor );
8102   ENTER_GL();
8103   func_glGlobalAlphaFactoruiSUN( factor );
8104   LEAVE_GL();
8105 }
8106
8107 static void WINAPI wine_glGlobalAlphaFactorusSUN( GLushort factor ) {
8108   void (*func_glGlobalAlphaFactorusSUN)( GLushort ) = extension_funcs[EXT_glGlobalAlphaFactorusSUN];
8109   TRACE("(%d)\n", factor );
8110   ENTER_GL();
8111   func_glGlobalAlphaFactorusSUN( factor );
8112   LEAVE_GL();
8113 }
8114
8115 static void WINAPI wine_glHintPGI( GLenum target, GLint mode ) {
8116   void (*func_glHintPGI)( GLenum, GLint ) = extension_funcs[EXT_glHintPGI];
8117   TRACE("(%d, %d)\n", target, mode );
8118   ENTER_GL();
8119   func_glHintPGI( target, mode );
8120   LEAVE_GL();
8121 }
8122
8123 static void WINAPI wine_glHistogram( GLenum target, GLsizei width, GLenum internalformat, GLboolean sink ) {
8124   void (*func_glHistogram)( GLenum, GLsizei, GLenum, GLboolean ) = extension_funcs[EXT_glHistogram];
8125   TRACE("(%d, %d, %d, %d)\n", target, width, internalformat, sink );
8126   ENTER_GL();
8127   func_glHistogram( target, width, internalformat, sink );
8128   LEAVE_GL();
8129 }
8130
8131 static void WINAPI wine_glHistogramEXT( GLenum target, GLsizei width, GLenum internalformat, GLboolean sink ) {
8132   void (*func_glHistogramEXT)( GLenum, GLsizei, GLenum, GLboolean ) = extension_funcs[EXT_glHistogramEXT];
8133   TRACE("(%d, %d, %d, %d)\n", target, width, internalformat, sink );
8134   ENTER_GL();
8135   func_glHistogramEXT( target, width, internalformat, sink );
8136   LEAVE_GL();
8137 }
8138
8139 static void WINAPI wine_glIglooInterfaceSGIX( GLenum pname, GLvoid* params ) {
8140   void (*func_glIglooInterfaceSGIX)( GLenum, GLvoid* ) = extension_funcs[EXT_glIglooInterfaceSGIX];
8141   TRACE("(%d, %p)\n", pname, params );
8142   ENTER_GL();
8143   func_glIglooInterfaceSGIX( pname, params );
8144   LEAVE_GL();
8145 }
8146
8147 static void WINAPI wine_glImageTransformParameterfHP( GLenum target, GLenum pname, GLfloat param ) {
8148   void (*func_glImageTransformParameterfHP)( GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glImageTransformParameterfHP];
8149   TRACE("(%d, %d, %f)\n", target, pname, param );
8150   ENTER_GL();
8151   func_glImageTransformParameterfHP( target, pname, param );
8152   LEAVE_GL();
8153 }
8154
8155 static void WINAPI wine_glImageTransformParameterfvHP( GLenum target, GLenum pname, GLfloat* params ) {
8156   void (*func_glImageTransformParameterfvHP)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glImageTransformParameterfvHP];
8157   TRACE("(%d, %d, %p)\n", target, pname, params );
8158   ENTER_GL();
8159   func_glImageTransformParameterfvHP( target, pname, params );
8160   LEAVE_GL();
8161 }
8162
8163 static void WINAPI wine_glImageTransformParameteriHP( GLenum target, GLenum pname, GLint param ) {
8164   void (*func_glImageTransformParameteriHP)( GLenum, GLenum, GLint ) = extension_funcs[EXT_glImageTransformParameteriHP];
8165   TRACE("(%d, %d, %d)\n", target, pname, param );
8166   ENTER_GL();
8167   func_glImageTransformParameteriHP( target, pname, param );
8168   LEAVE_GL();
8169 }
8170
8171 static void WINAPI wine_glImageTransformParameterivHP( GLenum target, GLenum pname, GLint* params ) {
8172   void (*func_glImageTransformParameterivHP)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glImageTransformParameterivHP];
8173   TRACE("(%d, %d, %p)\n", target, pname, params );
8174   ENTER_GL();
8175   func_glImageTransformParameterivHP( target, pname, params );
8176   LEAVE_GL();
8177 }
8178
8179 static void WINAPI wine_glIndexFormatNV( GLenum type, GLsizei stride ) {
8180   void (*func_glIndexFormatNV)( GLenum, GLsizei ) = extension_funcs[EXT_glIndexFormatNV];
8181   TRACE("(%d, %d)\n", type, stride );
8182   ENTER_GL();
8183   func_glIndexFormatNV( type, stride );
8184   LEAVE_GL();
8185 }
8186
8187 static void WINAPI wine_glIndexFuncEXT( GLenum func, GLclampf ref ) {
8188   void (*func_glIndexFuncEXT)( GLenum, GLclampf ) = extension_funcs[EXT_glIndexFuncEXT];
8189   TRACE("(%d, %f)\n", func, ref );
8190   ENTER_GL();
8191   func_glIndexFuncEXT( func, ref );
8192   LEAVE_GL();
8193 }
8194
8195 static void WINAPI wine_glIndexMaterialEXT( GLenum face, GLenum mode ) {
8196   void (*func_glIndexMaterialEXT)( GLenum, GLenum ) = extension_funcs[EXT_glIndexMaterialEXT];
8197   TRACE("(%d, %d)\n", face, mode );
8198   ENTER_GL();
8199   func_glIndexMaterialEXT( face, mode );
8200   LEAVE_GL();
8201 }
8202
8203 static void WINAPI wine_glIndexPointerEXT( GLenum type, GLsizei stride, GLsizei count, GLvoid* pointer ) {
8204   void (*func_glIndexPointerEXT)( GLenum, GLsizei, GLsizei, GLvoid* ) = extension_funcs[EXT_glIndexPointerEXT];
8205   TRACE("(%d, %d, %d, %p)\n", type, stride, count, pointer );
8206   ENTER_GL();
8207   func_glIndexPointerEXT( type, stride, count, pointer );
8208   LEAVE_GL();
8209 }
8210
8211 static void WINAPI wine_glIndexPointerListIBM( GLenum type, GLint stride, GLvoid** pointer, GLint ptrstride ) {
8212   void (*func_glIndexPointerListIBM)( GLenum, GLint, GLvoid**, GLint ) = extension_funcs[EXT_glIndexPointerListIBM];
8213   TRACE("(%d, %d, %p, %d)\n", type, stride, pointer, ptrstride );
8214   ENTER_GL();
8215   func_glIndexPointerListIBM( type, stride, pointer, ptrstride );
8216   LEAVE_GL();
8217 }
8218
8219 static void WINAPI wine_glInsertComponentEXT( GLuint res, GLuint src, GLuint num ) {
8220   void (*func_glInsertComponentEXT)( GLuint, GLuint, GLuint ) = extension_funcs[EXT_glInsertComponentEXT];
8221   TRACE("(%d, %d, %d)\n", res, src, num );
8222   ENTER_GL();
8223   func_glInsertComponentEXT( res, src, num );
8224   LEAVE_GL();
8225 }
8226
8227 static void WINAPI wine_glInstrumentsBufferSGIX( GLsizei size, GLint* buffer ) {
8228   void (*func_glInstrumentsBufferSGIX)( GLsizei, GLint* ) = extension_funcs[EXT_glInstrumentsBufferSGIX];
8229   TRACE("(%d, %p)\n", size, buffer );
8230   ENTER_GL();
8231   func_glInstrumentsBufferSGIX( size, buffer );
8232   LEAVE_GL();
8233 }
8234
8235 static GLboolean WINAPI wine_glIsAsyncMarkerSGIX( GLuint marker ) {
8236   GLboolean ret_value;
8237   GLboolean (*func_glIsAsyncMarkerSGIX)( GLuint ) = extension_funcs[EXT_glIsAsyncMarkerSGIX];
8238   TRACE("(%d)\n", marker );
8239   ENTER_GL();
8240   ret_value = func_glIsAsyncMarkerSGIX( marker );
8241   LEAVE_GL();
8242   return ret_value;
8243 }
8244
8245 static GLboolean WINAPI wine_glIsBuffer( GLuint buffer ) {
8246   GLboolean ret_value;
8247   GLboolean (*func_glIsBuffer)( GLuint ) = extension_funcs[EXT_glIsBuffer];
8248   TRACE("(%d)\n", buffer );
8249   ENTER_GL();
8250   ret_value = func_glIsBuffer( buffer );
8251   LEAVE_GL();
8252   return ret_value;
8253 }
8254
8255 static GLboolean WINAPI wine_glIsBufferARB( GLuint buffer ) {
8256   GLboolean ret_value;
8257   GLboolean (*func_glIsBufferARB)( GLuint ) = extension_funcs[EXT_glIsBufferARB];
8258   TRACE("(%d)\n", buffer );
8259   ENTER_GL();
8260   ret_value = func_glIsBufferARB( buffer );
8261   LEAVE_GL();
8262   return ret_value;
8263 }
8264
8265 static GLboolean WINAPI wine_glIsBufferResidentNV( GLenum target ) {
8266   GLboolean ret_value;
8267   GLboolean (*func_glIsBufferResidentNV)( GLenum ) = extension_funcs[EXT_glIsBufferResidentNV];
8268   TRACE("(%d)\n", target );
8269   ENTER_GL();
8270   ret_value = func_glIsBufferResidentNV( target );
8271   LEAVE_GL();
8272   return ret_value;
8273 }
8274
8275 static GLboolean WINAPI wine_glIsEnabledIndexedEXT( GLenum target, GLuint index ) {
8276   GLboolean ret_value;
8277   GLboolean (*func_glIsEnabledIndexedEXT)( GLenum, GLuint ) = extension_funcs[EXT_glIsEnabledIndexedEXT];
8278   TRACE("(%d, %d)\n", target, index );
8279   ENTER_GL();
8280   ret_value = func_glIsEnabledIndexedEXT( target, index );
8281   LEAVE_GL();
8282   return ret_value;
8283 }
8284
8285 static GLboolean WINAPI wine_glIsEnabledi( GLenum target, GLuint index ) {
8286   GLboolean ret_value;
8287   GLboolean (*func_glIsEnabledi)( GLenum, GLuint ) = extension_funcs[EXT_glIsEnabledi];
8288   TRACE("(%d, %d)\n", target, index );
8289   ENTER_GL();
8290   ret_value = func_glIsEnabledi( target, index );
8291   LEAVE_GL();
8292   return ret_value;
8293 }
8294
8295 static GLboolean WINAPI wine_glIsFenceAPPLE( GLuint fence ) {
8296   GLboolean ret_value;
8297   GLboolean (*func_glIsFenceAPPLE)( GLuint ) = extension_funcs[EXT_glIsFenceAPPLE];
8298   TRACE("(%d)\n", fence );
8299   ENTER_GL();
8300   ret_value = func_glIsFenceAPPLE( fence );
8301   LEAVE_GL();
8302   return ret_value;
8303 }
8304
8305 static GLboolean WINAPI wine_glIsFenceNV( GLuint fence ) {
8306   GLboolean ret_value;
8307   GLboolean (*func_glIsFenceNV)( GLuint ) = extension_funcs[EXT_glIsFenceNV];
8308   TRACE("(%d)\n", fence );
8309   ENTER_GL();
8310   ret_value = func_glIsFenceNV( fence );
8311   LEAVE_GL();
8312   return ret_value;
8313 }
8314
8315 static GLboolean WINAPI wine_glIsFramebuffer( GLuint framebuffer ) {
8316   GLboolean ret_value;
8317   GLboolean (*func_glIsFramebuffer)( GLuint ) = extension_funcs[EXT_glIsFramebuffer];
8318   TRACE("(%d)\n", framebuffer );
8319   ENTER_GL();
8320   ret_value = func_glIsFramebuffer( framebuffer );
8321   LEAVE_GL();
8322   return ret_value;
8323 }
8324
8325 static GLboolean WINAPI wine_glIsFramebufferEXT( GLuint framebuffer ) {
8326   GLboolean ret_value;
8327   GLboolean (*func_glIsFramebufferEXT)( GLuint ) = extension_funcs[EXT_glIsFramebufferEXT];
8328   TRACE("(%d)\n", framebuffer );
8329   ENTER_GL();
8330   ret_value = func_glIsFramebufferEXT( framebuffer );
8331   LEAVE_GL();
8332   return ret_value;
8333 }
8334
8335 static GLboolean WINAPI wine_glIsNameAMD( GLenum identifier, GLuint name ) {
8336   GLboolean ret_value;
8337   GLboolean (*func_glIsNameAMD)( GLenum, GLuint ) = extension_funcs[EXT_glIsNameAMD];
8338   TRACE("(%d, %d)\n", identifier, name );
8339   ENTER_GL();
8340   ret_value = func_glIsNameAMD( identifier, name );
8341   LEAVE_GL();
8342   return ret_value;
8343 }
8344
8345 static GLboolean WINAPI wine_glIsNamedBufferResidentNV( GLuint buffer ) {
8346   GLboolean ret_value;
8347   GLboolean (*func_glIsNamedBufferResidentNV)( GLuint ) = extension_funcs[EXT_glIsNamedBufferResidentNV];
8348   TRACE("(%d)\n", buffer );
8349   ENTER_GL();
8350   ret_value = func_glIsNamedBufferResidentNV( buffer );
8351   LEAVE_GL();
8352   return ret_value;
8353 }
8354
8355 static GLboolean WINAPI wine_glIsNamedStringARB( GLint namelen, char* name ) {
8356   GLboolean ret_value;
8357   GLboolean (*func_glIsNamedStringARB)( GLint, char* ) = extension_funcs[EXT_glIsNamedStringARB];
8358   TRACE("(%d, %p)\n", namelen, name );
8359   ENTER_GL();
8360   ret_value = func_glIsNamedStringARB( namelen, name );
8361   LEAVE_GL();
8362   return ret_value;
8363 }
8364
8365 static GLboolean WINAPI wine_glIsObjectBufferATI( GLuint buffer ) {
8366   GLboolean ret_value;
8367   GLboolean (*func_glIsObjectBufferATI)( GLuint ) = extension_funcs[EXT_glIsObjectBufferATI];
8368   TRACE("(%d)\n", buffer );
8369   ENTER_GL();
8370   ret_value = func_glIsObjectBufferATI( buffer );
8371   LEAVE_GL();
8372   return ret_value;
8373 }
8374
8375 static GLboolean WINAPI wine_glIsOcclusionQueryNV( GLuint id ) {
8376   GLboolean ret_value;
8377   GLboolean (*func_glIsOcclusionQueryNV)( GLuint ) = extension_funcs[EXT_glIsOcclusionQueryNV];
8378   TRACE("(%d)\n", id );
8379   ENTER_GL();
8380   ret_value = func_glIsOcclusionQueryNV( id );
8381   LEAVE_GL();
8382   return ret_value;
8383 }
8384
8385 static GLboolean WINAPI wine_glIsProgram( GLuint program ) {
8386   GLboolean ret_value;
8387   GLboolean (*func_glIsProgram)( GLuint ) = extension_funcs[EXT_glIsProgram];
8388   TRACE("(%d)\n", program );
8389   ENTER_GL();
8390   ret_value = func_glIsProgram( program );
8391   LEAVE_GL();
8392   return ret_value;
8393 }
8394
8395 static GLboolean WINAPI wine_glIsProgramARB( GLuint program ) {
8396   GLboolean ret_value;
8397   GLboolean (*func_glIsProgramARB)( GLuint ) = extension_funcs[EXT_glIsProgramARB];
8398   TRACE("(%d)\n", program );
8399   ENTER_GL();
8400   ret_value = func_glIsProgramARB( program );
8401   LEAVE_GL();
8402   return ret_value;
8403 }
8404
8405 static GLboolean WINAPI wine_glIsProgramNV( GLuint id ) {
8406   GLboolean ret_value;
8407   GLboolean (*func_glIsProgramNV)( GLuint ) = extension_funcs[EXT_glIsProgramNV];
8408   TRACE("(%d)\n", id );
8409   ENTER_GL();
8410   ret_value = func_glIsProgramNV( id );
8411   LEAVE_GL();
8412   return ret_value;
8413 }
8414
8415 static GLboolean WINAPI wine_glIsProgramPipeline( GLuint pipeline ) {
8416   GLboolean ret_value;
8417   GLboolean (*func_glIsProgramPipeline)( GLuint ) = extension_funcs[EXT_glIsProgramPipeline];
8418   TRACE("(%d)\n", pipeline );
8419   ENTER_GL();
8420   ret_value = func_glIsProgramPipeline( pipeline );
8421   LEAVE_GL();
8422   return ret_value;
8423 }
8424
8425 static GLboolean WINAPI wine_glIsQuery( GLuint id ) {
8426   GLboolean ret_value;
8427   GLboolean (*func_glIsQuery)( GLuint ) = extension_funcs[EXT_glIsQuery];
8428   TRACE("(%d)\n", id );
8429   ENTER_GL();
8430   ret_value = func_glIsQuery( id );
8431   LEAVE_GL();
8432   return ret_value;
8433 }
8434
8435 static GLboolean WINAPI wine_glIsQueryARB( GLuint id ) {
8436   GLboolean ret_value;
8437   GLboolean (*func_glIsQueryARB)( GLuint ) = extension_funcs[EXT_glIsQueryARB];
8438   TRACE("(%d)\n", id );
8439   ENTER_GL();
8440   ret_value = func_glIsQueryARB( id );
8441   LEAVE_GL();
8442   return ret_value;
8443 }
8444
8445 static GLboolean WINAPI wine_glIsRenderbuffer( GLuint renderbuffer ) {
8446   GLboolean ret_value;
8447   GLboolean (*func_glIsRenderbuffer)( GLuint ) = extension_funcs[EXT_glIsRenderbuffer];
8448   TRACE("(%d)\n", renderbuffer );
8449   ENTER_GL();
8450   ret_value = func_glIsRenderbuffer( renderbuffer );
8451   LEAVE_GL();
8452   return ret_value;
8453 }
8454
8455 static GLboolean WINAPI wine_glIsRenderbufferEXT( GLuint renderbuffer ) {
8456   GLboolean ret_value;
8457   GLboolean (*func_glIsRenderbufferEXT)( GLuint ) = extension_funcs[EXT_glIsRenderbufferEXT];
8458   TRACE("(%d)\n", renderbuffer );
8459   ENTER_GL();
8460   ret_value = func_glIsRenderbufferEXT( renderbuffer );
8461   LEAVE_GL();
8462   return ret_value;
8463 }
8464
8465 static GLboolean WINAPI wine_glIsSampler( GLuint sampler ) {
8466   GLboolean ret_value;
8467   GLboolean (*func_glIsSampler)( GLuint ) = extension_funcs[EXT_glIsSampler];
8468   TRACE("(%d)\n", sampler );
8469   ENTER_GL();
8470   ret_value = func_glIsSampler( sampler );
8471   LEAVE_GL();
8472   return ret_value;
8473 }
8474
8475 static GLboolean WINAPI wine_glIsShader( GLuint shader ) {
8476   GLboolean ret_value;
8477   GLboolean (*func_glIsShader)( GLuint ) = extension_funcs[EXT_glIsShader];
8478   TRACE("(%d)\n", shader );
8479   ENTER_GL();
8480   ret_value = func_glIsShader( shader );
8481   LEAVE_GL();
8482   return ret_value;
8483 }
8484
8485 static GLboolean WINAPI wine_glIsSync( GLvoid* sync ) {
8486   GLboolean ret_value;
8487   GLboolean (*func_glIsSync)( GLvoid* ) = extension_funcs[EXT_glIsSync];
8488   TRACE("(%p)\n", sync );
8489   ENTER_GL();
8490   ret_value = func_glIsSync( sync );
8491   LEAVE_GL();
8492   return ret_value;
8493 }
8494
8495 static GLboolean WINAPI wine_glIsTextureEXT( GLuint texture ) {
8496   GLboolean ret_value;
8497   GLboolean (*func_glIsTextureEXT)( GLuint ) = extension_funcs[EXT_glIsTextureEXT];
8498   TRACE("(%d)\n", texture );
8499   ENTER_GL();
8500   ret_value = func_glIsTextureEXT( texture );
8501   LEAVE_GL();
8502   return ret_value;
8503 }
8504
8505 static GLboolean WINAPI wine_glIsTransformFeedback( GLuint id ) {
8506   GLboolean ret_value;
8507   GLboolean (*func_glIsTransformFeedback)( GLuint ) = extension_funcs[EXT_glIsTransformFeedback];
8508   TRACE("(%d)\n", id );
8509   ENTER_GL();
8510   ret_value = func_glIsTransformFeedback( id );
8511   LEAVE_GL();
8512   return ret_value;
8513 }
8514
8515 static GLboolean WINAPI wine_glIsTransformFeedbackNV( GLuint id ) {
8516   GLboolean ret_value;
8517   GLboolean (*func_glIsTransformFeedbackNV)( GLuint ) = extension_funcs[EXT_glIsTransformFeedbackNV];
8518   TRACE("(%d)\n", id );
8519   ENTER_GL();
8520   ret_value = func_glIsTransformFeedbackNV( id );
8521   LEAVE_GL();
8522   return ret_value;
8523 }
8524
8525 static GLboolean WINAPI wine_glIsVariantEnabledEXT( GLuint id, GLenum cap ) {
8526   GLboolean ret_value;
8527   GLboolean (*func_glIsVariantEnabledEXT)( GLuint, GLenum ) = extension_funcs[EXT_glIsVariantEnabledEXT];
8528   TRACE("(%d, %d)\n", id, cap );
8529   ENTER_GL();
8530   ret_value = func_glIsVariantEnabledEXT( id, cap );
8531   LEAVE_GL();
8532   return ret_value;
8533 }
8534
8535 static GLboolean WINAPI wine_glIsVertexArray( GLuint array ) {
8536   GLboolean ret_value;
8537   GLboolean (*func_glIsVertexArray)( GLuint ) = extension_funcs[EXT_glIsVertexArray];
8538   TRACE("(%d)\n", array );
8539   ENTER_GL();
8540   ret_value = func_glIsVertexArray( array );
8541   LEAVE_GL();
8542   return ret_value;
8543 }
8544
8545 static GLboolean WINAPI wine_glIsVertexArrayAPPLE( GLuint array ) {
8546   GLboolean ret_value;
8547   GLboolean (*func_glIsVertexArrayAPPLE)( GLuint ) = extension_funcs[EXT_glIsVertexArrayAPPLE];
8548   TRACE("(%d)\n", array );
8549   ENTER_GL();
8550   ret_value = func_glIsVertexArrayAPPLE( array );
8551   LEAVE_GL();
8552   return ret_value;
8553 }
8554
8555 static GLboolean WINAPI wine_glIsVertexAttribEnabledAPPLE( GLuint index, GLenum pname ) {
8556   GLboolean ret_value;
8557   GLboolean (*func_glIsVertexAttribEnabledAPPLE)( GLuint, GLenum ) = extension_funcs[EXT_glIsVertexAttribEnabledAPPLE];
8558   TRACE("(%d, %d)\n", index, pname );
8559   ENTER_GL();
8560   ret_value = func_glIsVertexAttribEnabledAPPLE( index, pname );
8561   LEAVE_GL();
8562   return ret_value;
8563 }
8564
8565 static void WINAPI wine_glLightEnviSGIX( GLenum pname, GLint param ) {
8566   void (*func_glLightEnviSGIX)( GLenum, GLint ) = extension_funcs[EXT_glLightEnviSGIX];
8567   TRACE("(%d, %d)\n", pname, param );
8568   ENTER_GL();
8569   func_glLightEnviSGIX( pname, param );
8570   LEAVE_GL();
8571 }
8572
8573 static void WINAPI wine_glLinkProgram( GLuint program ) {
8574   void (*func_glLinkProgram)( GLuint ) = extension_funcs[EXT_glLinkProgram];
8575   TRACE("(%d)\n", program );
8576   ENTER_GL();
8577   func_glLinkProgram( program );
8578   LEAVE_GL();
8579 }
8580
8581 static void WINAPI wine_glLinkProgramARB( unsigned int programObj ) {
8582   void (*func_glLinkProgramARB)( unsigned int ) = extension_funcs[EXT_glLinkProgramARB];
8583   TRACE("(%d)\n", programObj );
8584   ENTER_GL();
8585   func_glLinkProgramARB( programObj );
8586   LEAVE_GL();
8587 }
8588
8589 static void WINAPI wine_glListParameterfSGIX( GLuint list, GLenum pname, GLfloat param ) {
8590   void (*func_glListParameterfSGIX)( GLuint, GLenum, GLfloat ) = extension_funcs[EXT_glListParameterfSGIX];
8591   TRACE("(%d, %d, %f)\n", list, pname, param );
8592   ENTER_GL();
8593   func_glListParameterfSGIX( list, pname, param );
8594   LEAVE_GL();
8595 }
8596
8597 static void WINAPI wine_glListParameterfvSGIX( GLuint list, GLenum pname, GLfloat* params ) {
8598   void (*func_glListParameterfvSGIX)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glListParameterfvSGIX];
8599   TRACE("(%d, %d, %p)\n", list, pname, params );
8600   ENTER_GL();
8601   func_glListParameterfvSGIX( list, pname, params );
8602   LEAVE_GL();
8603 }
8604
8605 static void WINAPI wine_glListParameteriSGIX( GLuint list, GLenum pname, GLint param ) {
8606   void (*func_glListParameteriSGIX)( GLuint, GLenum, GLint ) = extension_funcs[EXT_glListParameteriSGIX];
8607   TRACE("(%d, %d, %d)\n", list, pname, param );
8608   ENTER_GL();
8609   func_glListParameteriSGIX( list, pname, param );
8610   LEAVE_GL();
8611 }
8612
8613 static void WINAPI wine_glListParameterivSGIX( GLuint list, GLenum pname, GLint* params ) {
8614   void (*func_glListParameterivSGIX)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glListParameterivSGIX];
8615   TRACE("(%d, %d, %p)\n", list, pname, params );
8616   ENTER_GL();
8617   func_glListParameterivSGIX( list, pname, params );
8618   LEAVE_GL();
8619 }
8620
8621 static void WINAPI wine_glLoadIdentityDeformationMapSGIX( GLbitfield mask ) {
8622   void (*func_glLoadIdentityDeformationMapSGIX)( GLbitfield ) = extension_funcs[EXT_glLoadIdentityDeformationMapSGIX];
8623   TRACE("(%d)\n", mask );
8624   ENTER_GL();
8625   func_glLoadIdentityDeformationMapSGIX( mask );
8626   LEAVE_GL();
8627 }
8628
8629 static void WINAPI wine_glLoadProgramNV( GLenum target, GLuint id, GLsizei len, GLubyte* program ) {
8630   void (*func_glLoadProgramNV)( GLenum, GLuint, GLsizei, GLubyte* ) = extension_funcs[EXT_glLoadProgramNV];
8631   TRACE("(%d, %d, %d, %p)\n", target, id, len, program );
8632   ENTER_GL();
8633   func_glLoadProgramNV( target, id, len, program );
8634   LEAVE_GL();
8635 }
8636
8637 static void WINAPI wine_glLoadTransposeMatrixd( GLdouble* m ) {
8638   void (*func_glLoadTransposeMatrixd)( GLdouble* ) = extension_funcs[EXT_glLoadTransposeMatrixd];
8639   TRACE("(%p)\n", m );
8640   ENTER_GL();
8641   func_glLoadTransposeMatrixd( m );
8642   LEAVE_GL();
8643 }
8644
8645 static void WINAPI wine_glLoadTransposeMatrixdARB( GLdouble* m ) {
8646   void (*func_glLoadTransposeMatrixdARB)( GLdouble* ) = extension_funcs[EXT_glLoadTransposeMatrixdARB];
8647   TRACE("(%p)\n", m );
8648   ENTER_GL();
8649   func_glLoadTransposeMatrixdARB( m );
8650   LEAVE_GL();
8651 }
8652
8653 static void WINAPI wine_glLoadTransposeMatrixf( GLfloat* m ) {
8654   void (*func_glLoadTransposeMatrixf)( GLfloat* ) = extension_funcs[EXT_glLoadTransposeMatrixf];
8655   TRACE("(%p)\n", m );
8656   ENTER_GL();
8657   func_glLoadTransposeMatrixf( m );
8658   LEAVE_GL();
8659 }
8660
8661 static void WINAPI wine_glLoadTransposeMatrixfARB( GLfloat* m ) {
8662   void (*func_glLoadTransposeMatrixfARB)( GLfloat* ) = extension_funcs[EXT_glLoadTransposeMatrixfARB];
8663   TRACE("(%p)\n", m );
8664   ENTER_GL();
8665   func_glLoadTransposeMatrixfARB( m );
8666   LEAVE_GL();
8667 }
8668
8669 static void WINAPI wine_glLockArraysEXT( GLint first, GLsizei count ) {
8670   void (*func_glLockArraysEXT)( GLint, GLsizei ) = extension_funcs[EXT_glLockArraysEXT];
8671   TRACE("(%d, %d)\n", first, count );
8672   ENTER_GL();
8673   func_glLockArraysEXT( first, count );
8674   LEAVE_GL();
8675 }
8676
8677 static void WINAPI wine_glMTexCoord2fSGIS( GLenum target, GLfloat s, GLfloat t ) {
8678   void (*func_glMTexCoord2fSGIS)( GLenum, GLfloat, GLfloat ) = extension_funcs[EXT_glMTexCoord2fSGIS];
8679   TRACE("(%d, %f, %f)\n", target, s, t );
8680   ENTER_GL();
8681   func_glMTexCoord2fSGIS( target, s, t );
8682   LEAVE_GL();
8683 }
8684
8685 static void WINAPI wine_glMTexCoord2fvSGIS( GLenum target, GLfloat * v ) {
8686   void (*func_glMTexCoord2fvSGIS)( GLenum, GLfloat * ) = extension_funcs[EXT_glMTexCoord2fvSGIS];
8687   TRACE("(%d, %p)\n", target, v );
8688   ENTER_GL();
8689   func_glMTexCoord2fvSGIS( target, v );
8690   LEAVE_GL();
8691 }
8692
8693 static void WINAPI wine_glMakeBufferNonResidentNV( GLenum target ) {
8694   void (*func_glMakeBufferNonResidentNV)( GLenum ) = extension_funcs[EXT_glMakeBufferNonResidentNV];
8695   TRACE("(%d)\n", target );
8696   ENTER_GL();
8697   func_glMakeBufferNonResidentNV( target );
8698   LEAVE_GL();
8699 }
8700
8701 static void WINAPI wine_glMakeBufferResidentNV( GLenum target, GLenum access ) {
8702   void (*func_glMakeBufferResidentNV)( GLenum, GLenum ) = extension_funcs[EXT_glMakeBufferResidentNV];
8703   TRACE("(%d, %d)\n", target, access );
8704   ENTER_GL();
8705   func_glMakeBufferResidentNV( target, access );
8706   LEAVE_GL();
8707 }
8708
8709 static void WINAPI wine_glMakeNamedBufferNonResidentNV( GLuint buffer ) {
8710   void (*func_glMakeNamedBufferNonResidentNV)( GLuint ) = extension_funcs[EXT_glMakeNamedBufferNonResidentNV];
8711   TRACE("(%d)\n", buffer );
8712   ENTER_GL();
8713   func_glMakeNamedBufferNonResidentNV( buffer );
8714   LEAVE_GL();
8715 }
8716
8717 static void WINAPI wine_glMakeNamedBufferResidentNV( GLuint buffer, GLenum access ) {
8718   void (*func_glMakeNamedBufferResidentNV)( GLuint, GLenum ) = extension_funcs[EXT_glMakeNamedBufferResidentNV];
8719   TRACE("(%d, %d)\n", buffer, access );
8720   ENTER_GL();
8721   func_glMakeNamedBufferResidentNV( buffer, access );
8722   LEAVE_GL();
8723 }
8724
8725 static GLvoid* WINAPI wine_glMapBuffer( GLenum target, GLenum access ) {
8726   GLvoid* ret_value;
8727   GLvoid* (*func_glMapBuffer)( GLenum, GLenum ) = extension_funcs[EXT_glMapBuffer];
8728   TRACE("(%d, %d)\n", target, access );
8729   ENTER_GL();
8730   ret_value = func_glMapBuffer( target, access );
8731   LEAVE_GL();
8732   return ret_value;
8733 }
8734
8735 static GLvoid* WINAPI wine_glMapBufferARB( GLenum target, GLenum access ) {
8736   GLvoid* ret_value;
8737   GLvoid* (*func_glMapBufferARB)( GLenum, GLenum ) = extension_funcs[EXT_glMapBufferARB];
8738   TRACE("(%d, %d)\n", target, access );
8739   ENTER_GL();
8740   ret_value = func_glMapBufferARB( target, access );
8741   LEAVE_GL();
8742   return ret_value;
8743 }
8744
8745 static GLvoid* WINAPI wine_glMapBufferRange( GLenum target, INT_PTR offset, INT_PTR length, GLbitfield access ) {
8746   GLvoid* ret_value;
8747   GLvoid* (*func_glMapBufferRange)( GLenum, INT_PTR, INT_PTR, GLbitfield ) = extension_funcs[EXT_glMapBufferRange];
8748   TRACE("(%d, %ld, %ld, %d)\n", target, offset, length, access );
8749   ENTER_GL();
8750   ret_value = func_glMapBufferRange( target, offset, length, access );
8751   LEAVE_GL();
8752   return ret_value;
8753 }
8754
8755 static void WINAPI wine_glMapControlPointsNV( GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, GLvoid* points ) {
8756   void (*func_glMapControlPointsNV)( GLenum, GLuint, GLenum, GLsizei, GLsizei, GLint, GLint, GLboolean, GLvoid* ) = extension_funcs[EXT_glMapControlPointsNV];
8757   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, index, type, ustride, vstride, uorder, vorder, packed, points );
8758   ENTER_GL();
8759   func_glMapControlPointsNV( target, index, type, ustride, vstride, uorder, vorder, packed, points );
8760   LEAVE_GL();
8761 }
8762
8763 static GLvoid* WINAPI wine_glMapNamedBufferEXT( GLuint buffer, GLenum access ) {
8764   GLvoid* ret_value;
8765   GLvoid* (*func_glMapNamedBufferEXT)( GLuint, GLenum ) = extension_funcs[EXT_glMapNamedBufferEXT];
8766   TRACE("(%d, %d)\n", buffer, access );
8767   ENTER_GL();
8768   ret_value = func_glMapNamedBufferEXT( buffer, access );
8769   LEAVE_GL();
8770   return ret_value;
8771 }
8772
8773 static GLvoid* WINAPI wine_glMapNamedBufferRangeEXT( GLuint buffer, INT_PTR offset, INT_PTR length, GLbitfield access ) {
8774   GLvoid* ret_value;
8775   GLvoid* (*func_glMapNamedBufferRangeEXT)( GLuint, INT_PTR, INT_PTR, GLbitfield ) = extension_funcs[EXT_glMapNamedBufferRangeEXT];
8776   TRACE("(%d, %ld, %ld, %d)\n", buffer, offset, length, access );
8777   ENTER_GL();
8778   ret_value = func_glMapNamedBufferRangeEXT( buffer, offset, length, access );
8779   LEAVE_GL();
8780   return ret_value;
8781 }
8782
8783 static GLvoid* WINAPI wine_glMapObjectBufferATI( GLuint buffer ) {
8784   GLvoid* ret_value;
8785   GLvoid* (*func_glMapObjectBufferATI)( GLuint ) = extension_funcs[EXT_glMapObjectBufferATI];
8786   TRACE("(%d)\n", buffer );
8787   ENTER_GL();
8788   ret_value = func_glMapObjectBufferATI( buffer );
8789   LEAVE_GL();
8790   return ret_value;
8791 }
8792
8793 static void WINAPI wine_glMapParameterfvNV( GLenum target, GLenum pname, GLfloat* params ) {
8794   void (*func_glMapParameterfvNV)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glMapParameterfvNV];
8795   TRACE("(%d, %d, %p)\n", target, pname, params );
8796   ENTER_GL();
8797   func_glMapParameterfvNV( target, pname, params );
8798   LEAVE_GL();
8799 }
8800
8801 static void WINAPI wine_glMapParameterivNV( GLenum target, GLenum pname, GLint* params ) {
8802   void (*func_glMapParameterivNV)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glMapParameterivNV];
8803   TRACE("(%d, %d, %p)\n", target, pname, params );
8804   ENTER_GL();
8805   func_glMapParameterivNV( target, pname, params );
8806   LEAVE_GL();
8807 }
8808
8809 static void WINAPI wine_glMapVertexAttrib1dAPPLE( GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, GLdouble* points ) {
8810   void (*func_glMapVertexAttrib1dAPPLE)( GLuint, GLuint, GLdouble, GLdouble, GLint, GLint, GLdouble* ) = extension_funcs[EXT_glMapVertexAttrib1dAPPLE];
8811   TRACE("(%d, %d, %f, %f, %d, %d, %p)\n", index, size, u1, u2, stride, order, points );
8812   ENTER_GL();
8813   func_glMapVertexAttrib1dAPPLE( index, size, u1, u2, stride, order, points );
8814   LEAVE_GL();
8815 }
8816
8817 static void WINAPI wine_glMapVertexAttrib1fAPPLE( GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, GLfloat* points ) {
8818   void (*func_glMapVertexAttrib1fAPPLE)( GLuint, GLuint, GLfloat, GLfloat, GLint, GLint, GLfloat* ) = extension_funcs[EXT_glMapVertexAttrib1fAPPLE];
8819   TRACE("(%d, %d, %f, %f, %d, %d, %p)\n", index, size, u1, u2, stride, order, points );
8820   ENTER_GL();
8821   func_glMapVertexAttrib1fAPPLE( index, size, u1, u2, stride, order, points );
8822   LEAVE_GL();
8823 }
8824
8825 static void WINAPI wine_glMapVertexAttrib2dAPPLE( GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, GLdouble* points ) {
8826   void (*func_glMapVertexAttrib2dAPPLE)( GLuint, GLuint, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, GLdouble* ) = extension_funcs[EXT_glMapVertexAttrib2dAPPLE];
8827   TRACE("(%d, %d, %f, %f, %d, %d, %f, %f, %d, %d, %p)\n", index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
8828   ENTER_GL();
8829   func_glMapVertexAttrib2dAPPLE( index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
8830   LEAVE_GL();
8831 }
8832
8833 static void WINAPI wine_glMapVertexAttrib2fAPPLE( GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, GLfloat* points ) {
8834   void (*func_glMapVertexAttrib2fAPPLE)( GLuint, GLuint, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, GLfloat* ) = extension_funcs[EXT_glMapVertexAttrib2fAPPLE];
8835   TRACE("(%d, %d, %f, %f, %d, %d, %f, %f, %d, %d, %p)\n", index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
8836   ENTER_GL();
8837   func_glMapVertexAttrib2fAPPLE( index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
8838   LEAVE_GL();
8839 }
8840
8841 static void WINAPI wine_glMatrixFrustumEXT( GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ) {
8842   void (*func_glMatrixFrustumEXT)( GLenum, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMatrixFrustumEXT];
8843   TRACE("(%d, %f, %f, %f, %f, %f, %f)\n", mode, left, right, bottom, top, zNear, zFar );
8844   ENTER_GL();
8845   func_glMatrixFrustumEXT( mode, left, right, bottom, top, zNear, zFar );
8846   LEAVE_GL();
8847 }
8848
8849 static void WINAPI wine_glMatrixIndexPointerARB( GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
8850   void (*func_glMatrixIndexPointerARB)( GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glMatrixIndexPointerARB];
8851   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
8852   ENTER_GL();
8853   func_glMatrixIndexPointerARB( size, type, stride, pointer );
8854   LEAVE_GL();
8855 }
8856
8857 static void WINAPI wine_glMatrixIndexubvARB( GLint size, GLubyte* indices ) {
8858   void (*func_glMatrixIndexubvARB)( GLint, GLubyte* ) = extension_funcs[EXT_glMatrixIndexubvARB];
8859   TRACE("(%d, %p)\n", size, indices );
8860   ENTER_GL();
8861   func_glMatrixIndexubvARB( size, indices );
8862   LEAVE_GL();
8863 }
8864
8865 static void WINAPI wine_glMatrixIndexuivARB( GLint size, GLuint* indices ) {
8866   void (*func_glMatrixIndexuivARB)( GLint, GLuint* ) = extension_funcs[EXT_glMatrixIndexuivARB];
8867   TRACE("(%d, %p)\n", size, indices );
8868   ENTER_GL();
8869   func_glMatrixIndexuivARB( size, indices );
8870   LEAVE_GL();
8871 }
8872
8873 static void WINAPI wine_glMatrixIndexusvARB( GLint size, GLushort* indices ) {
8874   void (*func_glMatrixIndexusvARB)( GLint, GLushort* ) = extension_funcs[EXT_glMatrixIndexusvARB];
8875   TRACE("(%d, %p)\n", size, indices );
8876   ENTER_GL();
8877   func_glMatrixIndexusvARB( size, indices );
8878   LEAVE_GL();
8879 }
8880
8881 static void WINAPI wine_glMatrixLoadIdentityEXT( GLenum mode ) {
8882   void (*func_glMatrixLoadIdentityEXT)( GLenum ) = extension_funcs[EXT_glMatrixLoadIdentityEXT];
8883   TRACE("(%d)\n", mode );
8884   ENTER_GL();
8885   func_glMatrixLoadIdentityEXT( mode );
8886   LEAVE_GL();
8887 }
8888
8889 static void WINAPI wine_glMatrixLoadTransposedEXT( GLenum mode, GLdouble* m ) {
8890   void (*func_glMatrixLoadTransposedEXT)( GLenum, GLdouble* ) = extension_funcs[EXT_glMatrixLoadTransposedEXT];
8891   TRACE("(%d, %p)\n", mode, m );
8892   ENTER_GL();
8893   func_glMatrixLoadTransposedEXT( mode, m );
8894   LEAVE_GL();
8895 }
8896
8897 static void WINAPI wine_glMatrixLoadTransposefEXT( GLenum mode, GLfloat* m ) {
8898   void (*func_glMatrixLoadTransposefEXT)( GLenum, GLfloat* ) = extension_funcs[EXT_glMatrixLoadTransposefEXT];
8899   TRACE("(%d, %p)\n", mode, m );
8900   ENTER_GL();
8901   func_glMatrixLoadTransposefEXT( mode, m );
8902   LEAVE_GL();
8903 }
8904
8905 static void WINAPI wine_glMatrixLoaddEXT( GLenum mode, GLdouble* m ) {
8906   void (*func_glMatrixLoaddEXT)( GLenum, GLdouble* ) = extension_funcs[EXT_glMatrixLoaddEXT];
8907   TRACE("(%d, %p)\n", mode, m );
8908   ENTER_GL();
8909   func_glMatrixLoaddEXT( mode, m );
8910   LEAVE_GL();
8911 }
8912
8913 static void WINAPI wine_glMatrixLoadfEXT( GLenum mode, GLfloat* m ) {
8914   void (*func_glMatrixLoadfEXT)( GLenum, GLfloat* ) = extension_funcs[EXT_glMatrixLoadfEXT];
8915   TRACE("(%d, %p)\n", mode, m );
8916   ENTER_GL();
8917   func_glMatrixLoadfEXT( mode, m );
8918   LEAVE_GL();
8919 }
8920
8921 static void WINAPI wine_glMatrixMultTransposedEXT( GLenum mode, GLdouble* m ) {
8922   void (*func_glMatrixMultTransposedEXT)( GLenum, GLdouble* ) = extension_funcs[EXT_glMatrixMultTransposedEXT];
8923   TRACE("(%d, %p)\n", mode, m );
8924   ENTER_GL();
8925   func_glMatrixMultTransposedEXT( mode, m );
8926   LEAVE_GL();
8927 }
8928
8929 static void WINAPI wine_glMatrixMultTransposefEXT( GLenum mode, GLfloat* m ) {
8930   void (*func_glMatrixMultTransposefEXT)( GLenum, GLfloat* ) = extension_funcs[EXT_glMatrixMultTransposefEXT];
8931   TRACE("(%d, %p)\n", mode, m );
8932   ENTER_GL();
8933   func_glMatrixMultTransposefEXT( mode, m );
8934   LEAVE_GL();
8935 }
8936
8937 static void WINAPI wine_glMatrixMultdEXT( GLenum mode, GLdouble* m ) {
8938   void (*func_glMatrixMultdEXT)( GLenum, GLdouble* ) = extension_funcs[EXT_glMatrixMultdEXT];
8939   TRACE("(%d, %p)\n", mode, m );
8940   ENTER_GL();
8941   func_glMatrixMultdEXT( mode, m );
8942   LEAVE_GL();
8943 }
8944
8945 static void WINAPI wine_glMatrixMultfEXT( GLenum mode, GLfloat* m ) {
8946   void (*func_glMatrixMultfEXT)( GLenum, GLfloat* ) = extension_funcs[EXT_glMatrixMultfEXT];
8947   TRACE("(%d, %p)\n", mode, m );
8948   ENTER_GL();
8949   func_glMatrixMultfEXT( mode, m );
8950   LEAVE_GL();
8951 }
8952
8953 static void WINAPI wine_glMatrixOrthoEXT( GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ) {
8954   void (*func_glMatrixOrthoEXT)( GLenum, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMatrixOrthoEXT];
8955   TRACE("(%d, %f, %f, %f, %f, %f, %f)\n", mode, left, right, bottom, top, zNear, zFar );
8956   ENTER_GL();
8957   func_glMatrixOrthoEXT( mode, left, right, bottom, top, zNear, zFar );
8958   LEAVE_GL();
8959 }
8960
8961 static void WINAPI wine_glMatrixPopEXT( GLenum mode ) {
8962   void (*func_glMatrixPopEXT)( GLenum ) = extension_funcs[EXT_glMatrixPopEXT];
8963   TRACE("(%d)\n", mode );
8964   ENTER_GL();
8965   func_glMatrixPopEXT( mode );
8966   LEAVE_GL();
8967 }
8968
8969 static void WINAPI wine_glMatrixPushEXT( GLenum mode ) {
8970   void (*func_glMatrixPushEXT)( GLenum ) = extension_funcs[EXT_glMatrixPushEXT];
8971   TRACE("(%d)\n", mode );
8972   ENTER_GL();
8973   func_glMatrixPushEXT( mode );
8974   LEAVE_GL();
8975 }
8976
8977 static void WINAPI wine_glMatrixRotatedEXT( GLenum mode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z ) {
8978   void (*func_glMatrixRotatedEXT)( GLenum, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMatrixRotatedEXT];
8979   TRACE("(%d, %f, %f, %f, %f)\n", mode, angle, x, y, z );
8980   ENTER_GL();
8981   func_glMatrixRotatedEXT( mode, angle, x, y, z );
8982   LEAVE_GL();
8983 }
8984
8985 static void WINAPI wine_glMatrixRotatefEXT( GLenum mode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z ) {
8986   void (*func_glMatrixRotatefEXT)( GLenum, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMatrixRotatefEXT];
8987   TRACE("(%d, %f, %f, %f, %f)\n", mode, angle, x, y, z );
8988   ENTER_GL();
8989   func_glMatrixRotatefEXT( mode, angle, x, y, z );
8990   LEAVE_GL();
8991 }
8992
8993 static void WINAPI wine_glMatrixScaledEXT( GLenum mode, GLdouble x, GLdouble y, GLdouble z ) {
8994   void (*func_glMatrixScaledEXT)( GLenum, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMatrixScaledEXT];
8995   TRACE("(%d, %f, %f, %f)\n", mode, x, y, z );
8996   ENTER_GL();
8997   func_glMatrixScaledEXT( mode, x, y, z );
8998   LEAVE_GL();
8999 }
9000
9001 static void WINAPI wine_glMatrixScalefEXT( GLenum mode, GLfloat x, GLfloat y, GLfloat z ) {
9002   void (*func_glMatrixScalefEXT)( GLenum, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMatrixScalefEXT];
9003   TRACE("(%d, %f, %f, %f)\n", mode, x, y, z );
9004   ENTER_GL();
9005   func_glMatrixScalefEXT( mode, x, y, z );
9006   LEAVE_GL();
9007 }
9008
9009 static void WINAPI wine_glMatrixTranslatedEXT( GLenum mode, GLdouble x, GLdouble y, GLdouble z ) {
9010   void (*func_glMatrixTranslatedEXT)( GLenum, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMatrixTranslatedEXT];
9011   TRACE("(%d, %f, %f, %f)\n", mode, x, y, z );
9012   ENTER_GL();
9013   func_glMatrixTranslatedEXT( mode, x, y, z );
9014   LEAVE_GL();
9015 }
9016
9017 static void WINAPI wine_glMatrixTranslatefEXT( GLenum mode, GLfloat x, GLfloat y, GLfloat z ) {
9018   void (*func_glMatrixTranslatefEXT)( GLenum, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMatrixTranslatefEXT];
9019   TRACE("(%d, %f, %f, %f)\n", mode, x, y, z );
9020   ENTER_GL();
9021   func_glMatrixTranslatefEXT( mode, x, y, z );
9022   LEAVE_GL();
9023 }
9024
9025 static void WINAPI wine_glMemoryBarrierEXT( GLbitfield barriers ) {
9026   void (*func_glMemoryBarrierEXT)( GLbitfield ) = extension_funcs[EXT_glMemoryBarrierEXT];
9027   TRACE("(%d)\n", barriers );
9028   ENTER_GL();
9029   func_glMemoryBarrierEXT( barriers );
9030   LEAVE_GL();
9031 }
9032
9033 static void WINAPI wine_glMinSampleShading( GLclampf value ) {
9034   void (*func_glMinSampleShading)( GLclampf ) = extension_funcs[EXT_glMinSampleShading];
9035   TRACE("(%f)\n", value );
9036   ENTER_GL();
9037   func_glMinSampleShading( value );
9038   LEAVE_GL();
9039 }
9040
9041 static void WINAPI wine_glMinSampleShadingARB( GLclampf value ) {
9042   void (*func_glMinSampleShadingARB)( GLclampf ) = extension_funcs[EXT_glMinSampleShadingARB];
9043   TRACE("(%f)\n", value );
9044   ENTER_GL();
9045   func_glMinSampleShadingARB( value );
9046   LEAVE_GL();
9047 }
9048
9049 static void WINAPI wine_glMinmax( GLenum target, GLenum internalformat, GLboolean sink ) {
9050   void (*func_glMinmax)( GLenum, GLenum, GLboolean ) = extension_funcs[EXT_glMinmax];
9051   TRACE("(%d, %d, %d)\n", target, internalformat, sink );
9052   ENTER_GL();
9053   func_glMinmax( target, internalformat, sink );
9054   LEAVE_GL();
9055 }
9056
9057 static void WINAPI wine_glMinmaxEXT( GLenum target, GLenum internalformat, GLboolean sink ) {
9058   void (*func_glMinmaxEXT)( GLenum, GLenum, GLboolean ) = extension_funcs[EXT_glMinmaxEXT];
9059   TRACE("(%d, %d, %d)\n", target, internalformat, sink );
9060   ENTER_GL();
9061   func_glMinmaxEXT( target, internalformat, sink );
9062   LEAVE_GL();
9063 }
9064
9065 static void WINAPI wine_glMultTransposeMatrixd( GLdouble* m ) {
9066   void (*func_glMultTransposeMatrixd)( GLdouble* ) = extension_funcs[EXT_glMultTransposeMatrixd];
9067   TRACE("(%p)\n", m );
9068   ENTER_GL();
9069   func_glMultTransposeMatrixd( m );
9070   LEAVE_GL();
9071 }
9072
9073 static void WINAPI wine_glMultTransposeMatrixdARB( GLdouble* m ) {
9074   void (*func_glMultTransposeMatrixdARB)( GLdouble* ) = extension_funcs[EXT_glMultTransposeMatrixdARB];
9075   TRACE("(%p)\n", m );
9076   ENTER_GL();
9077   func_glMultTransposeMatrixdARB( m );
9078   LEAVE_GL();
9079 }
9080
9081 static void WINAPI wine_glMultTransposeMatrixf( GLfloat* m ) {
9082   void (*func_glMultTransposeMatrixf)( GLfloat* ) = extension_funcs[EXT_glMultTransposeMatrixf];
9083   TRACE("(%p)\n", m );
9084   ENTER_GL();
9085   func_glMultTransposeMatrixf( m );
9086   LEAVE_GL();
9087 }
9088
9089 static void WINAPI wine_glMultTransposeMatrixfARB( GLfloat* m ) {
9090   void (*func_glMultTransposeMatrixfARB)( GLfloat* ) = extension_funcs[EXT_glMultTransposeMatrixfARB];
9091   TRACE("(%p)\n", m );
9092   ENTER_GL();
9093   func_glMultTransposeMatrixfARB( m );
9094   LEAVE_GL();
9095 }
9096
9097 static void WINAPI wine_glMultiDrawArrays( GLenum mode, GLint* first, GLsizei* count, GLsizei primcount ) {
9098   void (*func_glMultiDrawArrays)( GLenum, GLint*, GLsizei*, GLsizei ) = extension_funcs[EXT_glMultiDrawArrays];
9099   TRACE("(%d, %p, %p, %d)\n", mode, first, count, primcount );
9100   ENTER_GL();
9101   func_glMultiDrawArrays( mode, first, count, primcount );
9102   LEAVE_GL();
9103 }
9104
9105 static void WINAPI wine_glMultiDrawArraysEXT( GLenum mode, GLint* first, GLsizei* count, GLsizei primcount ) {
9106   void (*func_glMultiDrawArraysEXT)( GLenum, GLint*, GLsizei*, GLsizei ) = extension_funcs[EXT_glMultiDrawArraysEXT];
9107   TRACE("(%d, %p, %p, %d)\n", mode, first, count, primcount );
9108   ENTER_GL();
9109   func_glMultiDrawArraysEXT( mode, first, count, primcount );
9110   LEAVE_GL();
9111 }
9112
9113 static void WINAPI wine_glMultiDrawElementArrayAPPLE( GLenum mode, GLint* first, GLsizei* count, GLsizei primcount ) {
9114   void (*func_glMultiDrawElementArrayAPPLE)( GLenum, GLint*, GLsizei*, GLsizei ) = extension_funcs[EXT_glMultiDrawElementArrayAPPLE];
9115   TRACE("(%d, %p, %p, %d)\n", mode, first, count, primcount );
9116   ENTER_GL();
9117   func_glMultiDrawElementArrayAPPLE( mode, first, count, primcount );
9118   LEAVE_GL();
9119 }
9120
9121 static void WINAPI wine_glMultiDrawElements( GLenum mode, GLsizei* count, GLenum type, GLvoid** indices, GLsizei primcount ) {
9122   void (*func_glMultiDrawElements)( GLenum, GLsizei*, GLenum, GLvoid**, GLsizei ) = extension_funcs[EXT_glMultiDrawElements];
9123   TRACE("(%d, %p, %d, %p, %d)\n", mode, count, type, indices, primcount );
9124   ENTER_GL();
9125   func_glMultiDrawElements( mode, count, type, indices, primcount );
9126   LEAVE_GL();
9127 }
9128
9129 static void WINAPI wine_glMultiDrawElementsBaseVertex( GLenum mode, GLsizei* count, GLenum type, GLvoid** indices, GLsizei primcount, GLint* basevertex ) {
9130   void (*func_glMultiDrawElementsBaseVertex)( GLenum, GLsizei*, GLenum, GLvoid**, GLsizei, GLint* ) = extension_funcs[EXT_glMultiDrawElementsBaseVertex];
9131   TRACE("(%d, %p, %d, %p, %d, %p)\n", mode, count, type, indices, primcount, basevertex );
9132   ENTER_GL();
9133   func_glMultiDrawElementsBaseVertex( mode, count, type, indices, primcount, basevertex );
9134   LEAVE_GL();
9135 }
9136
9137 static void WINAPI wine_glMultiDrawElementsEXT( GLenum mode, GLsizei* count, GLenum type, GLvoid** indices, GLsizei primcount ) {
9138   void (*func_glMultiDrawElementsEXT)( GLenum, GLsizei*, GLenum, GLvoid**, GLsizei ) = extension_funcs[EXT_glMultiDrawElementsEXT];
9139   TRACE("(%d, %p, %d, %p, %d)\n", mode, count, type, indices, primcount );
9140   ENTER_GL();
9141   func_glMultiDrawElementsEXT( mode, count, type, indices, primcount );
9142   LEAVE_GL();
9143 }
9144
9145 static void WINAPI wine_glMultiDrawRangeElementArrayAPPLE( GLenum mode, GLuint start, GLuint end, GLint* first, GLsizei* count, GLsizei primcount ) {
9146   void (*func_glMultiDrawRangeElementArrayAPPLE)( GLenum, GLuint, GLuint, GLint*, GLsizei*, GLsizei ) = extension_funcs[EXT_glMultiDrawRangeElementArrayAPPLE];
9147   TRACE("(%d, %d, %d, %p, %p, %d)\n", mode, start, end, first, count, primcount );
9148   ENTER_GL();
9149   func_glMultiDrawRangeElementArrayAPPLE( mode, start, end, first, count, primcount );
9150   LEAVE_GL();
9151 }
9152
9153 static void WINAPI wine_glMultiModeDrawArraysIBM( GLenum* mode, GLint* first, GLsizei* count, GLsizei primcount, GLint modestride ) {
9154   void (*func_glMultiModeDrawArraysIBM)( GLenum*, GLint*, GLsizei*, GLsizei, GLint ) = extension_funcs[EXT_glMultiModeDrawArraysIBM];
9155   TRACE("(%p, %p, %p, %d, %d)\n", mode, first, count, primcount, modestride );
9156   ENTER_GL();
9157   func_glMultiModeDrawArraysIBM( mode, first, count, primcount, modestride );
9158   LEAVE_GL();
9159 }
9160
9161 static void WINAPI wine_glMultiModeDrawElementsIBM( GLenum* mode, GLsizei* count, GLenum type, GLvoid* const* indices, GLsizei primcount, GLint modestride ) {
9162   void (*func_glMultiModeDrawElementsIBM)( GLenum*, GLsizei*, GLenum, GLvoid* const*, GLsizei, GLint ) = extension_funcs[EXT_glMultiModeDrawElementsIBM];
9163   TRACE("(%p, %p, %d, %p, %d, %d)\n", mode, count, type, indices, primcount, modestride );
9164   ENTER_GL();
9165   func_glMultiModeDrawElementsIBM( mode, count, type, indices, primcount, modestride );
9166   LEAVE_GL();
9167 }
9168
9169 static void WINAPI wine_glMultiTexBufferEXT( GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer ) {
9170   void (*func_glMultiTexBufferEXT)( GLenum, GLenum, GLenum, GLuint ) = extension_funcs[EXT_glMultiTexBufferEXT];
9171   TRACE("(%d, %d, %d, %d)\n", texunit, target, internalformat, buffer );
9172   ENTER_GL();
9173   func_glMultiTexBufferEXT( texunit, target, internalformat, buffer );
9174   LEAVE_GL();
9175 }
9176
9177 static void WINAPI wine_glMultiTexCoord1d( GLenum target, GLdouble s ) {
9178   void (*func_glMultiTexCoord1d)( GLenum, GLdouble ) = extension_funcs[EXT_glMultiTexCoord1d];
9179   TRACE("(%d, %f)\n", target, s );
9180   ENTER_GL();
9181   func_glMultiTexCoord1d( target, s );
9182   LEAVE_GL();
9183 }
9184
9185 static void WINAPI wine_glMultiTexCoord1dARB( GLenum target, GLdouble s ) {
9186   void (*func_glMultiTexCoord1dARB)( GLenum, GLdouble ) = extension_funcs[EXT_glMultiTexCoord1dARB];
9187   TRACE("(%d, %f)\n", target, s );
9188   ENTER_GL();
9189   func_glMultiTexCoord1dARB( target, s );
9190   LEAVE_GL();
9191 }
9192
9193 static void WINAPI wine_glMultiTexCoord1dSGIS( GLenum target, GLdouble s ) {
9194   void (*func_glMultiTexCoord1dSGIS)( GLenum, GLdouble ) = extension_funcs[EXT_glMultiTexCoord1dSGIS];
9195   TRACE("(%d, %f)\n", target, s );
9196   ENTER_GL();
9197   func_glMultiTexCoord1dSGIS( target, s );
9198   LEAVE_GL();
9199 }
9200
9201 static void WINAPI wine_glMultiTexCoord1dv( GLenum target, GLdouble* v ) {
9202   void (*func_glMultiTexCoord1dv)( GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexCoord1dv];
9203   TRACE("(%d, %p)\n", target, v );
9204   ENTER_GL();
9205   func_glMultiTexCoord1dv( target, v );
9206   LEAVE_GL();
9207 }
9208
9209 static void WINAPI wine_glMultiTexCoord1dvARB( GLenum target, GLdouble* v ) {
9210   void (*func_glMultiTexCoord1dvARB)( GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexCoord1dvARB];
9211   TRACE("(%d, %p)\n", target, v );
9212   ENTER_GL();
9213   func_glMultiTexCoord1dvARB( target, v );
9214   LEAVE_GL();
9215 }
9216
9217 static void WINAPI wine_glMultiTexCoord1dvSGIS( GLenum target, GLdouble * v ) {
9218   void (*func_glMultiTexCoord1dvSGIS)( GLenum, GLdouble * ) = extension_funcs[EXT_glMultiTexCoord1dvSGIS];
9219   TRACE("(%d, %p)\n", target, v );
9220   ENTER_GL();
9221   func_glMultiTexCoord1dvSGIS( target, v );
9222   LEAVE_GL();
9223 }
9224
9225 static void WINAPI wine_glMultiTexCoord1f( GLenum target, GLfloat s ) {
9226   void (*func_glMultiTexCoord1f)( GLenum, GLfloat ) = extension_funcs[EXT_glMultiTexCoord1f];
9227   TRACE("(%d, %f)\n", target, s );
9228   ENTER_GL();
9229   func_glMultiTexCoord1f( target, s );
9230   LEAVE_GL();
9231 }
9232
9233 static void WINAPI wine_glMultiTexCoord1fARB( GLenum target, GLfloat s ) {
9234   void (*func_glMultiTexCoord1fARB)( GLenum, GLfloat ) = extension_funcs[EXT_glMultiTexCoord1fARB];
9235   TRACE("(%d, %f)\n", target, s );
9236   ENTER_GL();
9237   func_glMultiTexCoord1fARB( target, s );
9238   LEAVE_GL();
9239 }
9240
9241 static void WINAPI wine_glMultiTexCoord1fSGIS( GLenum target, GLfloat s ) {
9242   void (*func_glMultiTexCoord1fSGIS)( GLenum, GLfloat ) = extension_funcs[EXT_glMultiTexCoord1fSGIS];
9243   TRACE("(%d, %f)\n", target, s );
9244   ENTER_GL();
9245   func_glMultiTexCoord1fSGIS( target, s );
9246   LEAVE_GL();
9247 }
9248
9249 static void WINAPI wine_glMultiTexCoord1fv( GLenum target, GLfloat* v ) {
9250   void (*func_glMultiTexCoord1fv)( GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexCoord1fv];
9251   TRACE("(%d, %p)\n", target, v );
9252   ENTER_GL();
9253   func_glMultiTexCoord1fv( target, v );
9254   LEAVE_GL();
9255 }
9256
9257 static void WINAPI wine_glMultiTexCoord1fvARB( GLenum target, GLfloat* v ) {
9258   void (*func_glMultiTexCoord1fvARB)( GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexCoord1fvARB];
9259   TRACE("(%d, %p)\n", target, v );
9260   ENTER_GL();
9261   func_glMultiTexCoord1fvARB( target, v );
9262   LEAVE_GL();
9263 }
9264
9265 static void WINAPI wine_glMultiTexCoord1fvSGIS( GLenum target, const GLfloat * v ) {
9266   void (*func_glMultiTexCoord1fvSGIS)( GLenum, const GLfloat * ) = extension_funcs[EXT_glMultiTexCoord1fvSGIS];
9267   TRACE("(%d, %p)\n", target, v );
9268   ENTER_GL();
9269   func_glMultiTexCoord1fvSGIS( target, v );
9270   LEAVE_GL();
9271 }
9272
9273 static void WINAPI wine_glMultiTexCoord1hNV( GLenum target, unsigned short s ) {
9274   void (*func_glMultiTexCoord1hNV)( GLenum, unsigned short ) = extension_funcs[EXT_glMultiTexCoord1hNV];
9275   TRACE("(%d, %d)\n", target, s );
9276   ENTER_GL();
9277   func_glMultiTexCoord1hNV( target, s );
9278   LEAVE_GL();
9279 }
9280
9281 static void WINAPI wine_glMultiTexCoord1hvNV( GLenum target, unsigned short* v ) {
9282   void (*func_glMultiTexCoord1hvNV)( GLenum, unsigned short* ) = extension_funcs[EXT_glMultiTexCoord1hvNV];
9283   TRACE("(%d, %p)\n", target, v );
9284   ENTER_GL();
9285   func_glMultiTexCoord1hvNV( target, v );
9286   LEAVE_GL();
9287 }
9288
9289 static void WINAPI wine_glMultiTexCoord1i( GLenum target, GLint s ) {
9290   void (*func_glMultiTexCoord1i)( GLenum, GLint ) = extension_funcs[EXT_glMultiTexCoord1i];
9291   TRACE("(%d, %d)\n", target, s );
9292   ENTER_GL();
9293   func_glMultiTexCoord1i( target, s );
9294   LEAVE_GL();
9295 }
9296
9297 static void WINAPI wine_glMultiTexCoord1iARB( GLenum target, GLint s ) {
9298   void (*func_glMultiTexCoord1iARB)( GLenum, GLint ) = extension_funcs[EXT_glMultiTexCoord1iARB];
9299   TRACE("(%d, %d)\n", target, s );
9300   ENTER_GL();
9301   func_glMultiTexCoord1iARB( target, s );
9302   LEAVE_GL();
9303 }
9304
9305 static void WINAPI wine_glMultiTexCoord1iSGIS( GLenum target, GLint s ) {
9306   void (*func_glMultiTexCoord1iSGIS)( GLenum, GLint ) = extension_funcs[EXT_glMultiTexCoord1iSGIS];
9307   TRACE("(%d, %d)\n", target, s );
9308   ENTER_GL();
9309   func_glMultiTexCoord1iSGIS( target, s );
9310   LEAVE_GL();
9311 }
9312
9313 static void WINAPI wine_glMultiTexCoord1iv( GLenum target, GLint* v ) {
9314   void (*func_glMultiTexCoord1iv)( GLenum, GLint* ) = extension_funcs[EXT_glMultiTexCoord1iv];
9315   TRACE("(%d, %p)\n", target, v );
9316   ENTER_GL();
9317   func_glMultiTexCoord1iv( target, v );
9318   LEAVE_GL();
9319 }
9320
9321 static void WINAPI wine_glMultiTexCoord1ivARB( GLenum target, GLint* v ) {
9322   void (*func_glMultiTexCoord1ivARB)( GLenum, GLint* ) = extension_funcs[EXT_glMultiTexCoord1ivARB];
9323   TRACE("(%d, %p)\n", target, v );
9324   ENTER_GL();
9325   func_glMultiTexCoord1ivARB( target, v );
9326   LEAVE_GL();
9327 }
9328
9329 static void WINAPI wine_glMultiTexCoord1ivSGIS( GLenum target, GLint * v ) {
9330   void (*func_glMultiTexCoord1ivSGIS)( GLenum, GLint * ) = extension_funcs[EXT_glMultiTexCoord1ivSGIS];
9331   TRACE("(%d, %p)\n", target, v );
9332   ENTER_GL();
9333   func_glMultiTexCoord1ivSGIS( target, v );
9334   LEAVE_GL();
9335 }
9336
9337 static void WINAPI wine_glMultiTexCoord1s( GLenum target, GLshort s ) {
9338   void (*func_glMultiTexCoord1s)( GLenum, GLshort ) = extension_funcs[EXT_glMultiTexCoord1s];
9339   TRACE("(%d, %d)\n", target, s );
9340   ENTER_GL();
9341   func_glMultiTexCoord1s( target, s );
9342   LEAVE_GL();
9343 }
9344
9345 static void WINAPI wine_glMultiTexCoord1sARB( GLenum target, GLshort s ) {
9346   void (*func_glMultiTexCoord1sARB)( GLenum, GLshort ) = extension_funcs[EXT_glMultiTexCoord1sARB];
9347   TRACE("(%d, %d)\n", target, s );
9348   ENTER_GL();
9349   func_glMultiTexCoord1sARB( target, s );
9350   LEAVE_GL();
9351 }
9352
9353 static void WINAPI wine_glMultiTexCoord1sSGIS( GLenum target, GLshort s ) {
9354   void (*func_glMultiTexCoord1sSGIS)( GLenum, GLshort ) = extension_funcs[EXT_glMultiTexCoord1sSGIS];
9355   TRACE("(%d, %d)\n", target, s );
9356   ENTER_GL();
9357   func_glMultiTexCoord1sSGIS( target, s );
9358   LEAVE_GL();
9359 }
9360
9361 static void WINAPI wine_glMultiTexCoord1sv( GLenum target, GLshort* v ) {
9362   void (*func_glMultiTexCoord1sv)( GLenum, GLshort* ) = extension_funcs[EXT_glMultiTexCoord1sv];
9363   TRACE("(%d, %p)\n", target, v );
9364   ENTER_GL();
9365   func_glMultiTexCoord1sv( target, v );
9366   LEAVE_GL();
9367 }
9368
9369 static void WINAPI wine_glMultiTexCoord1svARB( GLenum target, GLshort* v ) {
9370   void (*func_glMultiTexCoord1svARB)( GLenum, GLshort* ) = extension_funcs[EXT_glMultiTexCoord1svARB];
9371   TRACE("(%d, %p)\n", target, v );
9372   ENTER_GL();
9373   func_glMultiTexCoord1svARB( target, v );
9374   LEAVE_GL();
9375 }
9376
9377 static void WINAPI wine_glMultiTexCoord1svSGIS( GLenum target, GLshort * v ) {
9378   void (*func_glMultiTexCoord1svSGIS)( GLenum, GLshort * ) = extension_funcs[EXT_glMultiTexCoord1svSGIS];
9379   TRACE("(%d, %p)\n", target, v );
9380   ENTER_GL();
9381   func_glMultiTexCoord1svSGIS( target, v );
9382   LEAVE_GL();
9383 }
9384
9385 static void WINAPI wine_glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t ) {
9386   void (*func_glMultiTexCoord2d)( GLenum, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord2d];
9387   TRACE("(%d, %f, %f)\n", target, s, t );
9388   ENTER_GL();
9389   func_glMultiTexCoord2d( target, s, t );
9390   LEAVE_GL();
9391 }
9392
9393 static void WINAPI wine_glMultiTexCoord2dARB( GLenum target, GLdouble s, GLdouble t ) {
9394   void (*func_glMultiTexCoord2dARB)( GLenum, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord2dARB];
9395   TRACE("(%d, %f, %f)\n", target, s, t );
9396   ENTER_GL();
9397   func_glMultiTexCoord2dARB( target, s, t );
9398   LEAVE_GL();
9399 }
9400
9401 static void WINAPI wine_glMultiTexCoord2dSGIS( GLenum target, GLdouble s, GLdouble t ) {
9402   void (*func_glMultiTexCoord2dSGIS)( GLenum, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord2dSGIS];
9403   TRACE("(%d, %f, %f)\n", target, s, t );
9404   ENTER_GL();
9405   func_glMultiTexCoord2dSGIS( target, s, t );
9406   LEAVE_GL();
9407 }
9408
9409 static void WINAPI wine_glMultiTexCoord2dv( GLenum target, GLdouble* v ) {
9410   void (*func_glMultiTexCoord2dv)( GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexCoord2dv];
9411   TRACE("(%d, %p)\n", target, v );
9412   ENTER_GL();
9413   func_glMultiTexCoord2dv( target, v );
9414   LEAVE_GL();
9415 }
9416
9417 static void WINAPI wine_glMultiTexCoord2dvARB( GLenum target, GLdouble* v ) {
9418   void (*func_glMultiTexCoord2dvARB)( GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexCoord2dvARB];
9419   TRACE("(%d, %p)\n", target, v );
9420   ENTER_GL();
9421   func_glMultiTexCoord2dvARB( target, v );
9422   LEAVE_GL();
9423 }
9424
9425 static void WINAPI wine_glMultiTexCoord2dvSGIS( GLenum target, GLdouble * v ) {
9426   void (*func_glMultiTexCoord2dvSGIS)( GLenum, GLdouble * ) = extension_funcs[EXT_glMultiTexCoord2dvSGIS];
9427   TRACE("(%d, %p)\n", target, v );
9428   ENTER_GL();
9429   func_glMultiTexCoord2dvSGIS( target, v );
9430   LEAVE_GL();
9431 }
9432
9433 static void WINAPI wine_glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t ) {
9434   void (*func_glMultiTexCoord2f)( GLenum, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord2f];
9435   TRACE("(%d, %f, %f)\n", target, s, t );
9436   ENTER_GL();
9437   func_glMultiTexCoord2f( target, s, t );
9438   LEAVE_GL();
9439 }
9440
9441 static void WINAPI wine_glMultiTexCoord2fARB( GLenum target, GLfloat s, GLfloat t ) {
9442   void (*func_glMultiTexCoord2fARB)( GLenum, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord2fARB];
9443   TRACE("(%d, %f, %f)\n", target, s, t );
9444   ENTER_GL();
9445   func_glMultiTexCoord2fARB( target, s, t );
9446   LEAVE_GL();
9447 }
9448
9449 static void WINAPI wine_glMultiTexCoord2fSGIS( GLenum target, GLfloat s, GLfloat t ) {
9450   void (*func_glMultiTexCoord2fSGIS)( GLenum, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord2fSGIS];
9451   TRACE("(%d, %f, %f)\n", target, s, t );
9452   ENTER_GL();
9453   func_glMultiTexCoord2fSGIS( target, s, t );
9454   LEAVE_GL();
9455 }
9456
9457 static void WINAPI wine_glMultiTexCoord2fv( GLenum target, GLfloat* v ) {
9458   void (*func_glMultiTexCoord2fv)( GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexCoord2fv];
9459   TRACE("(%d, %p)\n", target, v );
9460   ENTER_GL();
9461   func_glMultiTexCoord2fv( target, v );
9462   LEAVE_GL();
9463 }
9464
9465 static void WINAPI wine_glMultiTexCoord2fvARB( GLenum target, GLfloat* v ) {
9466   void (*func_glMultiTexCoord2fvARB)( GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexCoord2fvARB];
9467   TRACE("(%d, %p)\n", target, v );
9468   ENTER_GL();
9469   func_glMultiTexCoord2fvARB( target, v );
9470   LEAVE_GL();
9471 }
9472
9473 static void WINAPI wine_glMultiTexCoord2fvSGIS( GLenum target, GLfloat * v ) {
9474   void (*func_glMultiTexCoord2fvSGIS)( GLenum, GLfloat * ) = extension_funcs[EXT_glMultiTexCoord2fvSGIS];
9475   TRACE("(%d, %p)\n", target, v );
9476   ENTER_GL();
9477   func_glMultiTexCoord2fvSGIS( target, v );
9478   LEAVE_GL();
9479 }
9480
9481 static void WINAPI wine_glMultiTexCoord2hNV( GLenum target, unsigned short s, unsigned short t ) {
9482   void (*func_glMultiTexCoord2hNV)( GLenum, unsigned short, unsigned short ) = extension_funcs[EXT_glMultiTexCoord2hNV];
9483   TRACE("(%d, %d, %d)\n", target, s, t );
9484   ENTER_GL();
9485   func_glMultiTexCoord2hNV( target, s, t );
9486   LEAVE_GL();
9487 }
9488
9489 static void WINAPI wine_glMultiTexCoord2hvNV( GLenum target, unsigned short* v ) {
9490   void (*func_glMultiTexCoord2hvNV)( GLenum, unsigned short* ) = extension_funcs[EXT_glMultiTexCoord2hvNV];
9491   TRACE("(%d, %p)\n", target, v );
9492   ENTER_GL();
9493   func_glMultiTexCoord2hvNV( target, v );
9494   LEAVE_GL();
9495 }
9496
9497 static void WINAPI wine_glMultiTexCoord2i( GLenum target, GLint s, GLint t ) {
9498   void (*func_glMultiTexCoord2i)( GLenum, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord2i];
9499   TRACE("(%d, %d, %d)\n", target, s, t );
9500   ENTER_GL();
9501   func_glMultiTexCoord2i( target, s, t );
9502   LEAVE_GL();
9503 }
9504
9505 static void WINAPI wine_glMultiTexCoord2iARB( GLenum target, GLint s, GLint t ) {
9506   void (*func_glMultiTexCoord2iARB)( GLenum, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord2iARB];
9507   TRACE("(%d, %d, %d)\n", target, s, t );
9508   ENTER_GL();
9509   func_glMultiTexCoord2iARB( target, s, t );
9510   LEAVE_GL();
9511 }
9512
9513 static void WINAPI wine_glMultiTexCoord2iSGIS( GLenum target, GLint s, GLint t ) {
9514   void (*func_glMultiTexCoord2iSGIS)( GLenum, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord2iSGIS];
9515   TRACE("(%d, %d, %d)\n", target, s, t );
9516   ENTER_GL();
9517   func_glMultiTexCoord2iSGIS( target, s, t );
9518   LEAVE_GL();
9519 }
9520
9521 static void WINAPI wine_glMultiTexCoord2iv( GLenum target, GLint* v ) {
9522   void (*func_glMultiTexCoord2iv)( GLenum, GLint* ) = extension_funcs[EXT_glMultiTexCoord2iv];
9523   TRACE("(%d, %p)\n", target, v );
9524   ENTER_GL();
9525   func_glMultiTexCoord2iv( target, v );
9526   LEAVE_GL();
9527 }
9528
9529 static void WINAPI wine_glMultiTexCoord2ivARB( GLenum target, GLint* v ) {
9530   void (*func_glMultiTexCoord2ivARB)( GLenum, GLint* ) = extension_funcs[EXT_glMultiTexCoord2ivARB];
9531   TRACE("(%d, %p)\n", target, v );
9532   ENTER_GL();
9533   func_glMultiTexCoord2ivARB( target, v );
9534   LEAVE_GL();
9535 }
9536
9537 static void WINAPI wine_glMultiTexCoord2ivSGIS( GLenum target, GLint * v ) {
9538   void (*func_glMultiTexCoord2ivSGIS)( GLenum, GLint * ) = extension_funcs[EXT_glMultiTexCoord2ivSGIS];
9539   TRACE("(%d, %p)\n", target, v );
9540   ENTER_GL();
9541   func_glMultiTexCoord2ivSGIS( target, v );
9542   LEAVE_GL();
9543 }
9544
9545 static void WINAPI wine_glMultiTexCoord2s( GLenum target, GLshort s, GLshort t ) {
9546   void (*func_glMultiTexCoord2s)( GLenum, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord2s];
9547   TRACE("(%d, %d, %d)\n", target, s, t );
9548   ENTER_GL();
9549   func_glMultiTexCoord2s( target, s, t );
9550   LEAVE_GL();
9551 }
9552
9553 static void WINAPI wine_glMultiTexCoord2sARB( GLenum target, GLshort s, GLshort t ) {
9554   void (*func_glMultiTexCoord2sARB)( GLenum, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord2sARB];
9555   TRACE("(%d, %d, %d)\n", target, s, t );
9556   ENTER_GL();
9557   func_glMultiTexCoord2sARB( target, s, t );
9558   LEAVE_GL();
9559 }
9560
9561 static void WINAPI wine_glMultiTexCoord2sSGIS( GLenum target, GLshort s, GLshort t ) {
9562   void (*func_glMultiTexCoord2sSGIS)( GLenum, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord2sSGIS];
9563   TRACE("(%d, %d, %d)\n", target, s, t );
9564   ENTER_GL();
9565   func_glMultiTexCoord2sSGIS( target, s, t );
9566   LEAVE_GL();
9567 }
9568
9569 static void WINAPI wine_glMultiTexCoord2sv( GLenum target, GLshort* v ) {
9570   void (*func_glMultiTexCoord2sv)( GLenum, GLshort* ) = extension_funcs[EXT_glMultiTexCoord2sv];
9571   TRACE("(%d, %p)\n", target, v );
9572   ENTER_GL();
9573   func_glMultiTexCoord2sv( target, v );
9574   LEAVE_GL();
9575 }
9576
9577 static void WINAPI wine_glMultiTexCoord2svARB( GLenum target, GLshort* v ) {
9578   void (*func_glMultiTexCoord2svARB)( GLenum, GLshort* ) = extension_funcs[EXT_glMultiTexCoord2svARB];
9579   TRACE("(%d, %p)\n", target, v );
9580   ENTER_GL();
9581   func_glMultiTexCoord2svARB( target, v );
9582   LEAVE_GL();
9583 }
9584
9585 static void WINAPI wine_glMultiTexCoord2svSGIS( GLenum target, GLshort * v ) {
9586   void (*func_glMultiTexCoord2svSGIS)( GLenum, GLshort * ) = extension_funcs[EXT_glMultiTexCoord2svSGIS];
9587   TRACE("(%d, %p)\n", target, v );
9588   ENTER_GL();
9589   func_glMultiTexCoord2svSGIS( target, v );
9590   LEAVE_GL();
9591 }
9592
9593 static void WINAPI wine_glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r ) {
9594   void (*func_glMultiTexCoord3d)( GLenum, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord3d];
9595   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
9596   ENTER_GL();
9597   func_glMultiTexCoord3d( target, s, t, r );
9598   LEAVE_GL();
9599 }
9600
9601 static void WINAPI wine_glMultiTexCoord3dARB( GLenum target, GLdouble s, GLdouble t, GLdouble r ) {
9602   void (*func_glMultiTexCoord3dARB)( GLenum, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord3dARB];
9603   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
9604   ENTER_GL();
9605   func_glMultiTexCoord3dARB( target, s, t, r );
9606   LEAVE_GL();
9607 }
9608
9609 static void WINAPI wine_glMultiTexCoord3dSGIS( GLenum target, GLdouble s, GLdouble t, GLdouble r ) {
9610   void (*func_glMultiTexCoord3dSGIS)( GLenum, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord3dSGIS];
9611   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
9612   ENTER_GL();
9613   func_glMultiTexCoord3dSGIS( target, s, t, r );
9614   LEAVE_GL();
9615 }
9616
9617 static void WINAPI wine_glMultiTexCoord3dv( GLenum target, GLdouble* v ) {
9618   void (*func_glMultiTexCoord3dv)( GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexCoord3dv];
9619   TRACE("(%d, %p)\n", target, v );
9620   ENTER_GL();
9621   func_glMultiTexCoord3dv( target, v );
9622   LEAVE_GL();
9623 }
9624
9625 static void WINAPI wine_glMultiTexCoord3dvARB( GLenum target, GLdouble* v ) {
9626   void (*func_glMultiTexCoord3dvARB)( GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexCoord3dvARB];
9627   TRACE("(%d, %p)\n", target, v );
9628   ENTER_GL();
9629   func_glMultiTexCoord3dvARB( target, v );
9630   LEAVE_GL();
9631 }
9632
9633 static void WINAPI wine_glMultiTexCoord3dvSGIS( GLenum target, GLdouble * v ) {
9634   void (*func_glMultiTexCoord3dvSGIS)( GLenum, GLdouble * ) = extension_funcs[EXT_glMultiTexCoord3dvSGIS];
9635   TRACE("(%d, %p)\n", target, v );
9636   ENTER_GL();
9637   func_glMultiTexCoord3dvSGIS( target, v );
9638   LEAVE_GL();
9639 }
9640
9641 static void WINAPI wine_glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r ) {
9642   void (*func_glMultiTexCoord3f)( GLenum, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord3f];
9643   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
9644   ENTER_GL();
9645   func_glMultiTexCoord3f( target, s, t, r );
9646   LEAVE_GL();
9647 }
9648
9649 static void WINAPI wine_glMultiTexCoord3fARB( GLenum target, GLfloat s, GLfloat t, GLfloat r ) {
9650   void (*func_glMultiTexCoord3fARB)( GLenum, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord3fARB];
9651   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
9652   ENTER_GL();
9653   func_glMultiTexCoord3fARB( target, s, t, r );
9654   LEAVE_GL();
9655 }
9656
9657 static void WINAPI wine_glMultiTexCoord3fSGIS( GLenum target, GLfloat s, GLfloat t, GLfloat r ) {
9658   void (*func_glMultiTexCoord3fSGIS)( GLenum, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord3fSGIS];
9659   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
9660   ENTER_GL();
9661   func_glMultiTexCoord3fSGIS( target, s, t, r );
9662   LEAVE_GL();
9663 }
9664
9665 static void WINAPI wine_glMultiTexCoord3fv( GLenum target, GLfloat* v ) {
9666   void (*func_glMultiTexCoord3fv)( GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexCoord3fv];
9667   TRACE("(%d, %p)\n", target, v );
9668   ENTER_GL();
9669   func_glMultiTexCoord3fv( target, v );
9670   LEAVE_GL();
9671 }
9672
9673 static void WINAPI wine_glMultiTexCoord3fvARB( GLenum target, GLfloat* v ) {
9674   void (*func_glMultiTexCoord3fvARB)( GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexCoord3fvARB];
9675   TRACE("(%d, %p)\n", target, v );
9676   ENTER_GL();
9677   func_glMultiTexCoord3fvARB( target, v );
9678   LEAVE_GL();
9679 }
9680
9681 static void WINAPI wine_glMultiTexCoord3fvSGIS( GLenum target, GLfloat * v ) {
9682   void (*func_glMultiTexCoord3fvSGIS)( GLenum, GLfloat * ) = extension_funcs[EXT_glMultiTexCoord3fvSGIS];
9683   TRACE("(%d, %p)\n", target, v );
9684   ENTER_GL();
9685   func_glMultiTexCoord3fvSGIS( target, v );
9686   LEAVE_GL();
9687 }
9688
9689 static void WINAPI wine_glMultiTexCoord3hNV( GLenum target, unsigned short s, unsigned short t, unsigned short r ) {
9690   void (*func_glMultiTexCoord3hNV)( GLenum, unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glMultiTexCoord3hNV];
9691   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
9692   ENTER_GL();
9693   func_glMultiTexCoord3hNV( target, s, t, r );
9694   LEAVE_GL();
9695 }
9696
9697 static void WINAPI wine_glMultiTexCoord3hvNV( GLenum target, unsigned short* v ) {
9698   void (*func_glMultiTexCoord3hvNV)( GLenum, unsigned short* ) = extension_funcs[EXT_glMultiTexCoord3hvNV];
9699   TRACE("(%d, %p)\n", target, v );
9700   ENTER_GL();
9701   func_glMultiTexCoord3hvNV( target, v );
9702   LEAVE_GL();
9703 }
9704
9705 static void WINAPI wine_glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r ) {
9706   void (*func_glMultiTexCoord3i)( GLenum, GLint, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord3i];
9707   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
9708   ENTER_GL();
9709   func_glMultiTexCoord3i( target, s, t, r );
9710   LEAVE_GL();
9711 }
9712
9713 static void WINAPI wine_glMultiTexCoord3iARB( GLenum target, GLint s, GLint t, GLint r ) {
9714   void (*func_glMultiTexCoord3iARB)( GLenum, GLint, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord3iARB];
9715   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
9716   ENTER_GL();
9717   func_glMultiTexCoord3iARB( target, s, t, r );
9718   LEAVE_GL();
9719 }
9720
9721 static void WINAPI wine_glMultiTexCoord3iSGIS( GLenum target, GLint s, GLint t, GLint r ) {
9722   void (*func_glMultiTexCoord3iSGIS)( GLenum, GLint, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord3iSGIS];
9723   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
9724   ENTER_GL();
9725   func_glMultiTexCoord3iSGIS( target, s, t, r );
9726   LEAVE_GL();
9727 }
9728
9729 static void WINAPI wine_glMultiTexCoord3iv( GLenum target, GLint* v ) {
9730   void (*func_glMultiTexCoord3iv)( GLenum, GLint* ) = extension_funcs[EXT_glMultiTexCoord3iv];
9731   TRACE("(%d, %p)\n", target, v );
9732   ENTER_GL();
9733   func_glMultiTexCoord3iv( target, v );
9734   LEAVE_GL();
9735 }
9736
9737 static void WINAPI wine_glMultiTexCoord3ivARB( GLenum target, GLint* v ) {
9738   void (*func_glMultiTexCoord3ivARB)( GLenum, GLint* ) = extension_funcs[EXT_glMultiTexCoord3ivARB];
9739   TRACE("(%d, %p)\n", target, v );
9740   ENTER_GL();
9741   func_glMultiTexCoord3ivARB( target, v );
9742   LEAVE_GL();
9743 }
9744
9745 static void WINAPI wine_glMultiTexCoord3ivSGIS( GLenum target, GLint * v ) {
9746   void (*func_glMultiTexCoord3ivSGIS)( GLenum, GLint * ) = extension_funcs[EXT_glMultiTexCoord3ivSGIS];
9747   TRACE("(%d, %p)\n", target, v );
9748   ENTER_GL();
9749   func_glMultiTexCoord3ivSGIS( target, v );
9750   LEAVE_GL();
9751 }
9752
9753 static void WINAPI wine_glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r ) {
9754   void (*func_glMultiTexCoord3s)( GLenum, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord3s];
9755   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
9756   ENTER_GL();
9757   func_glMultiTexCoord3s( target, s, t, r );
9758   LEAVE_GL();
9759 }
9760
9761 static void WINAPI wine_glMultiTexCoord3sARB( GLenum target, GLshort s, GLshort t, GLshort r ) {
9762   void (*func_glMultiTexCoord3sARB)( GLenum, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord3sARB];
9763   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
9764   ENTER_GL();
9765   func_glMultiTexCoord3sARB( target, s, t, r );
9766   LEAVE_GL();
9767 }
9768
9769 static void WINAPI wine_glMultiTexCoord3sSGIS( GLenum target, GLshort s, GLshort t, GLshort r ) {
9770   void (*func_glMultiTexCoord3sSGIS)( GLenum, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord3sSGIS];
9771   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
9772   ENTER_GL();
9773   func_glMultiTexCoord3sSGIS( target, s, t, r );
9774   LEAVE_GL();
9775 }
9776
9777 static void WINAPI wine_glMultiTexCoord3sv( GLenum target, GLshort* v ) {
9778   void (*func_glMultiTexCoord3sv)( GLenum, GLshort* ) = extension_funcs[EXT_glMultiTexCoord3sv];
9779   TRACE("(%d, %p)\n", target, v );
9780   ENTER_GL();
9781   func_glMultiTexCoord3sv( target, v );
9782   LEAVE_GL();
9783 }
9784
9785 static void WINAPI wine_glMultiTexCoord3svARB( GLenum target, GLshort* v ) {
9786   void (*func_glMultiTexCoord3svARB)( GLenum, GLshort* ) = extension_funcs[EXT_glMultiTexCoord3svARB];
9787   TRACE("(%d, %p)\n", target, v );
9788   ENTER_GL();
9789   func_glMultiTexCoord3svARB( target, v );
9790   LEAVE_GL();
9791 }
9792
9793 static void WINAPI wine_glMultiTexCoord3svSGIS( GLenum target, GLshort * v ) {
9794   void (*func_glMultiTexCoord3svSGIS)( GLenum, GLshort * ) = extension_funcs[EXT_glMultiTexCoord3svSGIS];
9795   TRACE("(%d, %p)\n", target, v );
9796   ENTER_GL();
9797   func_glMultiTexCoord3svSGIS( target, v );
9798   LEAVE_GL();
9799 }
9800
9801 static void WINAPI wine_glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ) {
9802   void (*func_glMultiTexCoord4d)( GLenum, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord4d];
9803   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
9804   ENTER_GL();
9805   func_glMultiTexCoord4d( target, s, t, r, q );
9806   LEAVE_GL();
9807 }
9808
9809 static void WINAPI wine_glMultiTexCoord4dARB( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ) {
9810   void (*func_glMultiTexCoord4dARB)( GLenum, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord4dARB];
9811   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
9812   ENTER_GL();
9813   func_glMultiTexCoord4dARB( target, s, t, r, q );
9814   LEAVE_GL();
9815 }
9816
9817 static void WINAPI wine_glMultiTexCoord4dSGIS( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ) {
9818   void (*func_glMultiTexCoord4dSGIS)( GLenum, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glMultiTexCoord4dSGIS];
9819   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
9820   ENTER_GL();
9821   func_glMultiTexCoord4dSGIS( target, s, t, r, q );
9822   LEAVE_GL();
9823 }
9824
9825 static void WINAPI wine_glMultiTexCoord4dv( GLenum target, GLdouble* v ) {
9826   void (*func_glMultiTexCoord4dv)( GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexCoord4dv];
9827   TRACE("(%d, %p)\n", target, v );
9828   ENTER_GL();
9829   func_glMultiTexCoord4dv( target, v );
9830   LEAVE_GL();
9831 }
9832
9833 static void WINAPI wine_glMultiTexCoord4dvARB( GLenum target, GLdouble* v ) {
9834   void (*func_glMultiTexCoord4dvARB)( GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexCoord4dvARB];
9835   TRACE("(%d, %p)\n", target, v );
9836   ENTER_GL();
9837   func_glMultiTexCoord4dvARB( target, v );
9838   LEAVE_GL();
9839 }
9840
9841 static void WINAPI wine_glMultiTexCoord4dvSGIS( GLenum target, GLdouble * v ) {
9842   void (*func_glMultiTexCoord4dvSGIS)( GLenum, GLdouble * ) = extension_funcs[EXT_glMultiTexCoord4dvSGIS];
9843   TRACE("(%d, %p)\n", target, v );
9844   ENTER_GL();
9845   func_glMultiTexCoord4dvSGIS( target, v );
9846   LEAVE_GL();
9847 }
9848
9849 static void WINAPI wine_glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) {
9850   void (*func_glMultiTexCoord4f)( GLenum, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord4f];
9851   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
9852   ENTER_GL();
9853   func_glMultiTexCoord4f( target, s, t, r, q );
9854   LEAVE_GL();
9855 }
9856
9857 static void WINAPI wine_glMultiTexCoord4fARB( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) {
9858   void (*func_glMultiTexCoord4fARB)( GLenum, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord4fARB];
9859   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
9860   ENTER_GL();
9861   func_glMultiTexCoord4fARB( target, s, t, r, q );
9862   LEAVE_GL();
9863 }
9864
9865 static void WINAPI wine_glMultiTexCoord4fSGIS( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) {
9866   void (*func_glMultiTexCoord4fSGIS)( GLenum, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glMultiTexCoord4fSGIS];
9867   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
9868   ENTER_GL();
9869   func_glMultiTexCoord4fSGIS( target, s, t, r, q );
9870   LEAVE_GL();
9871 }
9872
9873 static void WINAPI wine_glMultiTexCoord4fv( GLenum target, GLfloat* v ) {
9874   void (*func_glMultiTexCoord4fv)( GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexCoord4fv];
9875   TRACE("(%d, %p)\n", target, v );
9876   ENTER_GL();
9877   func_glMultiTexCoord4fv( target, v );
9878   LEAVE_GL();
9879 }
9880
9881 static void WINAPI wine_glMultiTexCoord4fvARB( GLenum target, GLfloat* v ) {
9882   void (*func_glMultiTexCoord4fvARB)( GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexCoord4fvARB];
9883   TRACE("(%d, %p)\n", target, v );
9884   ENTER_GL();
9885   func_glMultiTexCoord4fvARB( target, v );
9886   LEAVE_GL();
9887 }
9888
9889 static void WINAPI wine_glMultiTexCoord4fvSGIS( GLenum target, GLfloat * v ) {
9890   void (*func_glMultiTexCoord4fvSGIS)( GLenum, GLfloat * ) = extension_funcs[EXT_glMultiTexCoord4fvSGIS];
9891   TRACE("(%d, %p)\n", target, v );
9892   ENTER_GL();
9893   func_glMultiTexCoord4fvSGIS( target, v );
9894   LEAVE_GL();
9895 }
9896
9897 static void WINAPI wine_glMultiTexCoord4hNV( GLenum target, unsigned short s, unsigned short t, unsigned short r, unsigned short q ) {
9898   void (*func_glMultiTexCoord4hNV)( GLenum, unsigned short, unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glMultiTexCoord4hNV];
9899   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
9900   ENTER_GL();
9901   func_glMultiTexCoord4hNV( target, s, t, r, q );
9902   LEAVE_GL();
9903 }
9904
9905 static void WINAPI wine_glMultiTexCoord4hvNV( GLenum target, unsigned short* v ) {
9906   void (*func_glMultiTexCoord4hvNV)( GLenum, unsigned short* ) = extension_funcs[EXT_glMultiTexCoord4hvNV];
9907   TRACE("(%d, %p)\n", target, v );
9908   ENTER_GL();
9909   func_glMultiTexCoord4hvNV( target, v );
9910   LEAVE_GL();
9911 }
9912
9913 static void WINAPI wine_glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q ) {
9914   void (*func_glMultiTexCoord4i)( GLenum, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord4i];
9915   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
9916   ENTER_GL();
9917   func_glMultiTexCoord4i( target, s, t, r, q );
9918   LEAVE_GL();
9919 }
9920
9921 static void WINAPI wine_glMultiTexCoord4iARB( GLenum target, GLint s, GLint t, GLint r, GLint q ) {
9922   void (*func_glMultiTexCoord4iARB)( GLenum, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord4iARB];
9923   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
9924   ENTER_GL();
9925   func_glMultiTexCoord4iARB( target, s, t, r, q );
9926   LEAVE_GL();
9927 }
9928
9929 static void WINAPI wine_glMultiTexCoord4iSGIS( GLenum target, GLint s, GLint t, GLint r, GLint q ) {
9930   void (*func_glMultiTexCoord4iSGIS)( GLenum, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glMultiTexCoord4iSGIS];
9931   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
9932   ENTER_GL();
9933   func_glMultiTexCoord4iSGIS( target, s, t, r, q );
9934   LEAVE_GL();
9935 }
9936
9937 static void WINAPI wine_glMultiTexCoord4iv( GLenum target, GLint* v ) {
9938   void (*func_glMultiTexCoord4iv)( GLenum, GLint* ) = extension_funcs[EXT_glMultiTexCoord4iv];
9939   TRACE("(%d, %p)\n", target, v );
9940   ENTER_GL();
9941   func_glMultiTexCoord4iv( target, v );
9942   LEAVE_GL();
9943 }
9944
9945 static void WINAPI wine_glMultiTexCoord4ivARB( GLenum target, GLint* v ) {
9946   void (*func_glMultiTexCoord4ivARB)( GLenum, GLint* ) = extension_funcs[EXT_glMultiTexCoord4ivARB];
9947   TRACE("(%d, %p)\n", target, v );
9948   ENTER_GL();
9949   func_glMultiTexCoord4ivARB( target, v );
9950   LEAVE_GL();
9951 }
9952
9953 static void WINAPI wine_glMultiTexCoord4ivSGIS( GLenum target, GLint * v ) {
9954   void (*func_glMultiTexCoord4ivSGIS)( GLenum, GLint * ) = extension_funcs[EXT_glMultiTexCoord4ivSGIS];
9955   TRACE("(%d, %p)\n", target, v );
9956   ENTER_GL();
9957   func_glMultiTexCoord4ivSGIS( target, v );
9958   LEAVE_GL();
9959 }
9960
9961 static void WINAPI wine_glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ) {
9962   void (*func_glMultiTexCoord4s)( GLenum, GLshort, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord4s];
9963   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
9964   ENTER_GL();
9965   func_glMultiTexCoord4s( target, s, t, r, q );
9966   LEAVE_GL();
9967 }
9968
9969 static void WINAPI wine_glMultiTexCoord4sARB( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ) {
9970   void (*func_glMultiTexCoord4sARB)( GLenum, GLshort, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord4sARB];
9971   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
9972   ENTER_GL();
9973   func_glMultiTexCoord4sARB( target, s, t, r, q );
9974   LEAVE_GL();
9975 }
9976
9977 static void WINAPI wine_glMultiTexCoord4sSGIS( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ) {
9978   void (*func_glMultiTexCoord4sSGIS)( GLenum, GLshort, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glMultiTexCoord4sSGIS];
9979   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
9980   ENTER_GL();
9981   func_glMultiTexCoord4sSGIS( target, s, t, r, q );
9982   LEAVE_GL();
9983 }
9984
9985 static void WINAPI wine_glMultiTexCoord4sv( GLenum target, GLshort* v ) {
9986   void (*func_glMultiTexCoord4sv)( GLenum, GLshort* ) = extension_funcs[EXT_glMultiTexCoord4sv];
9987   TRACE("(%d, %p)\n", target, v );
9988   ENTER_GL();
9989   func_glMultiTexCoord4sv( target, v );
9990   LEAVE_GL();
9991 }
9992
9993 static void WINAPI wine_glMultiTexCoord4svARB( GLenum target, GLshort* v ) {
9994   void (*func_glMultiTexCoord4svARB)( GLenum, GLshort* ) = extension_funcs[EXT_glMultiTexCoord4svARB];
9995   TRACE("(%d, %p)\n", target, v );
9996   ENTER_GL();
9997   func_glMultiTexCoord4svARB( target, v );
9998   LEAVE_GL();
9999 }
10000
10001 static void WINAPI wine_glMultiTexCoord4svSGIS( GLenum target, GLshort * v ) {
10002   void (*func_glMultiTexCoord4svSGIS)( GLenum, GLshort * ) = extension_funcs[EXT_glMultiTexCoord4svSGIS];
10003   TRACE("(%d, %p)\n", target, v );
10004   ENTER_GL();
10005   func_glMultiTexCoord4svSGIS( target, v );
10006   LEAVE_GL();
10007 }
10008
10009 static void WINAPI wine_glMultiTexCoordP1ui( GLenum texture, GLenum type, GLuint coords ) {
10010   void (*func_glMultiTexCoordP1ui)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glMultiTexCoordP1ui];
10011   TRACE("(%d, %d, %d)\n", texture, type, coords );
10012   ENTER_GL();
10013   func_glMultiTexCoordP1ui( texture, type, coords );
10014   LEAVE_GL();
10015 }
10016
10017 static void WINAPI wine_glMultiTexCoordP1uiv( GLenum texture, GLenum type, GLuint* coords ) {
10018   void (*func_glMultiTexCoordP1uiv)( GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glMultiTexCoordP1uiv];
10019   TRACE("(%d, %d, %p)\n", texture, type, coords );
10020   ENTER_GL();
10021   func_glMultiTexCoordP1uiv( texture, type, coords );
10022   LEAVE_GL();
10023 }
10024
10025 static void WINAPI wine_glMultiTexCoordP2ui( GLenum texture, GLenum type, GLuint coords ) {
10026   void (*func_glMultiTexCoordP2ui)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glMultiTexCoordP2ui];
10027   TRACE("(%d, %d, %d)\n", texture, type, coords );
10028   ENTER_GL();
10029   func_glMultiTexCoordP2ui( texture, type, coords );
10030   LEAVE_GL();
10031 }
10032
10033 static void WINAPI wine_glMultiTexCoordP2uiv( GLenum texture, GLenum type, GLuint* coords ) {
10034   void (*func_glMultiTexCoordP2uiv)( GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glMultiTexCoordP2uiv];
10035   TRACE("(%d, %d, %p)\n", texture, type, coords );
10036   ENTER_GL();
10037   func_glMultiTexCoordP2uiv( texture, type, coords );
10038   LEAVE_GL();
10039 }
10040
10041 static void WINAPI wine_glMultiTexCoordP3ui( GLenum texture, GLenum type, GLuint coords ) {
10042   void (*func_glMultiTexCoordP3ui)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glMultiTexCoordP3ui];
10043   TRACE("(%d, %d, %d)\n", texture, type, coords );
10044   ENTER_GL();
10045   func_glMultiTexCoordP3ui( texture, type, coords );
10046   LEAVE_GL();
10047 }
10048
10049 static void WINAPI wine_glMultiTexCoordP3uiv( GLenum texture, GLenum type, GLuint* coords ) {
10050   void (*func_glMultiTexCoordP3uiv)( GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glMultiTexCoordP3uiv];
10051   TRACE("(%d, %d, %p)\n", texture, type, coords );
10052   ENTER_GL();
10053   func_glMultiTexCoordP3uiv( texture, type, coords );
10054   LEAVE_GL();
10055 }
10056
10057 static void WINAPI wine_glMultiTexCoordP4ui( GLenum texture, GLenum type, GLuint coords ) {
10058   void (*func_glMultiTexCoordP4ui)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glMultiTexCoordP4ui];
10059   TRACE("(%d, %d, %d)\n", texture, type, coords );
10060   ENTER_GL();
10061   func_glMultiTexCoordP4ui( texture, type, coords );
10062   LEAVE_GL();
10063 }
10064
10065 static void WINAPI wine_glMultiTexCoordP4uiv( GLenum texture, GLenum type, GLuint* coords ) {
10066   void (*func_glMultiTexCoordP4uiv)( GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glMultiTexCoordP4uiv];
10067   TRACE("(%d, %d, %p)\n", texture, type, coords );
10068   ENTER_GL();
10069   func_glMultiTexCoordP4uiv( texture, type, coords );
10070   LEAVE_GL();
10071 }
10072
10073 static void WINAPI wine_glMultiTexCoordPointerEXT( GLenum texunit, GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
10074   void (*func_glMultiTexCoordPointerEXT)( GLenum, GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glMultiTexCoordPointerEXT];
10075   TRACE("(%d, %d, %d, %d, %p)\n", texunit, size, type, stride, pointer );
10076   ENTER_GL();
10077   func_glMultiTexCoordPointerEXT( texunit, size, type, stride, pointer );
10078   LEAVE_GL();
10079 }
10080
10081 static void WINAPI wine_glMultiTexCoordPointerSGIS( GLenum target, GLint size, GLenum type, GLsizei stride, GLvoid * pointer ) {
10082   void (*func_glMultiTexCoordPointerSGIS)( GLenum, GLint, GLenum, GLsizei, GLvoid * ) = extension_funcs[EXT_glMultiTexCoordPointerSGIS];
10083   TRACE("(%d, %d, %d, %d, %p)\n", target, size, type, stride, pointer );
10084   ENTER_GL();
10085   func_glMultiTexCoordPointerSGIS( target, size, type, stride, pointer );
10086   LEAVE_GL();
10087 }
10088
10089 static void WINAPI wine_glMultiTexEnvfEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat param ) {
10090   void (*func_glMultiTexEnvfEXT)( GLenum, GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glMultiTexEnvfEXT];
10091   TRACE("(%d, %d, %d, %f)\n", texunit, target, pname, param );
10092   ENTER_GL();
10093   func_glMultiTexEnvfEXT( texunit, target, pname, param );
10094   LEAVE_GL();
10095 }
10096
10097 static void WINAPI wine_glMultiTexEnvfvEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat* params ) {
10098   void (*func_glMultiTexEnvfvEXT)( GLenum, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexEnvfvEXT];
10099   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
10100   ENTER_GL();
10101   func_glMultiTexEnvfvEXT( texunit, target, pname, params );
10102   LEAVE_GL();
10103 }
10104
10105 static void WINAPI wine_glMultiTexEnviEXT( GLenum texunit, GLenum target, GLenum pname, GLint param ) {
10106   void (*func_glMultiTexEnviEXT)( GLenum, GLenum, GLenum, GLint ) = extension_funcs[EXT_glMultiTexEnviEXT];
10107   TRACE("(%d, %d, %d, %d)\n", texunit, target, pname, param );
10108   ENTER_GL();
10109   func_glMultiTexEnviEXT( texunit, target, pname, param );
10110   LEAVE_GL();
10111 }
10112
10113 static void WINAPI wine_glMultiTexEnvivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
10114   void (*func_glMultiTexEnvivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glMultiTexEnvivEXT];
10115   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
10116   ENTER_GL();
10117   func_glMultiTexEnvivEXT( texunit, target, pname, params );
10118   LEAVE_GL();
10119 }
10120
10121 static void WINAPI wine_glMultiTexGendEXT( GLenum texunit, GLenum coord, GLenum pname, GLdouble param ) {
10122   void (*func_glMultiTexGendEXT)( GLenum, GLenum, GLenum, GLdouble ) = extension_funcs[EXT_glMultiTexGendEXT];
10123   TRACE("(%d, %d, %d, %f)\n", texunit, coord, pname, param );
10124   ENTER_GL();
10125   func_glMultiTexGendEXT( texunit, coord, pname, param );
10126   LEAVE_GL();
10127 }
10128
10129 static void WINAPI wine_glMultiTexGendvEXT( GLenum texunit, GLenum coord, GLenum pname, GLdouble* params ) {
10130   void (*func_glMultiTexGendvEXT)( GLenum, GLenum, GLenum, GLdouble* ) = extension_funcs[EXT_glMultiTexGendvEXT];
10131   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
10132   ENTER_GL();
10133   func_glMultiTexGendvEXT( texunit, coord, pname, params );
10134   LEAVE_GL();
10135 }
10136
10137 static void WINAPI wine_glMultiTexGenfEXT( GLenum texunit, GLenum coord, GLenum pname, GLfloat param ) {
10138   void (*func_glMultiTexGenfEXT)( GLenum, GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glMultiTexGenfEXT];
10139   TRACE("(%d, %d, %d, %f)\n", texunit, coord, pname, param );
10140   ENTER_GL();
10141   func_glMultiTexGenfEXT( texunit, coord, pname, param );
10142   LEAVE_GL();
10143 }
10144
10145 static void WINAPI wine_glMultiTexGenfvEXT( GLenum texunit, GLenum coord, GLenum pname, GLfloat* params ) {
10146   void (*func_glMultiTexGenfvEXT)( GLenum, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexGenfvEXT];
10147   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
10148   ENTER_GL();
10149   func_glMultiTexGenfvEXT( texunit, coord, pname, params );
10150   LEAVE_GL();
10151 }
10152
10153 static void WINAPI wine_glMultiTexGeniEXT( GLenum texunit, GLenum coord, GLenum pname, GLint param ) {
10154   void (*func_glMultiTexGeniEXT)( GLenum, GLenum, GLenum, GLint ) = extension_funcs[EXT_glMultiTexGeniEXT];
10155   TRACE("(%d, %d, %d, %d)\n", texunit, coord, pname, param );
10156   ENTER_GL();
10157   func_glMultiTexGeniEXT( texunit, coord, pname, param );
10158   LEAVE_GL();
10159 }
10160
10161 static void WINAPI wine_glMultiTexGenivEXT( GLenum texunit, GLenum coord, GLenum pname, GLint* params ) {
10162   void (*func_glMultiTexGenivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glMultiTexGenivEXT];
10163   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
10164   ENTER_GL();
10165   func_glMultiTexGenivEXT( texunit, coord, pname, params );
10166   LEAVE_GL();
10167 }
10168
10169 static void WINAPI wine_glMultiTexImage1DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
10170   void (*func_glMultiTexImage1DEXT)( GLenum, GLenum, GLint, GLenum, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glMultiTexImage1DEXT];
10171   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, border, format, type, pixels );
10172   ENTER_GL();
10173   func_glMultiTexImage1DEXT( texunit, target, level, internalformat, width, border, format, type, pixels );
10174   LEAVE_GL();
10175 }
10176
10177 static void WINAPI wine_glMultiTexImage2DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
10178   void (*func_glMultiTexImage2DEXT)( GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glMultiTexImage2DEXT];
10179   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, height, border, format, type, pixels );
10180   ENTER_GL();
10181   func_glMultiTexImage2DEXT( texunit, target, level, internalformat, width, height, border, format, type, pixels );
10182   LEAVE_GL();
10183 }
10184
10185 static void WINAPI wine_glMultiTexImage3DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
10186   void (*func_glMultiTexImage3DEXT)( GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glMultiTexImage3DEXT];
10187   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, height, depth, border, format, type, pixels );
10188   ENTER_GL();
10189   func_glMultiTexImage3DEXT( texunit, target, level, internalformat, width, height, depth, border, format, type, pixels );
10190   LEAVE_GL();
10191 }
10192
10193 static void WINAPI wine_glMultiTexParameterIivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
10194   void (*func_glMultiTexParameterIivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glMultiTexParameterIivEXT];
10195   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
10196   ENTER_GL();
10197   func_glMultiTexParameterIivEXT( texunit, target, pname, params );
10198   LEAVE_GL();
10199 }
10200
10201 static void WINAPI wine_glMultiTexParameterIuivEXT( GLenum texunit, GLenum target, GLenum pname, GLuint* params ) {
10202   void (*func_glMultiTexParameterIuivEXT)( GLenum, GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glMultiTexParameterIuivEXT];
10203   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
10204   ENTER_GL();
10205   func_glMultiTexParameterIuivEXT( texunit, target, pname, params );
10206   LEAVE_GL();
10207 }
10208
10209 static void WINAPI wine_glMultiTexParameterfEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat param ) {
10210   void (*func_glMultiTexParameterfEXT)( GLenum, GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glMultiTexParameterfEXT];
10211   TRACE("(%d, %d, %d, %f)\n", texunit, target, pname, param );
10212   ENTER_GL();
10213   func_glMultiTexParameterfEXT( texunit, target, pname, param );
10214   LEAVE_GL();
10215 }
10216
10217 static void WINAPI wine_glMultiTexParameterfvEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat* params ) {
10218   void (*func_glMultiTexParameterfvEXT)( GLenum, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glMultiTexParameterfvEXT];
10219   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
10220   ENTER_GL();
10221   func_glMultiTexParameterfvEXT( texunit, target, pname, params );
10222   LEAVE_GL();
10223 }
10224
10225 static void WINAPI wine_glMultiTexParameteriEXT( GLenum texunit, GLenum target, GLenum pname, GLint param ) {
10226   void (*func_glMultiTexParameteriEXT)( GLenum, GLenum, GLenum, GLint ) = extension_funcs[EXT_glMultiTexParameteriEXT];
10227   TRACE("(%d, %d, %d, %d)\n", texunit, target, pname, param );
10228   ENTER_GL();
10229   func_glMultiTexParameteriEXT( texunit, target, pname, param );
10230   LEAVE_GL();
10231 }
10232
10233 static void WINAPI wine_glMultiTexParameterivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
10234   void (*func_glMultiTexParameterivEXT)( GLenum, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glMultiTexParameterivEXT];
10235   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
10236   ENTER_GL();
10237   func_glMultiTexParameterivEXT( texunit, target, pname, params );
10238   LEAVE_GL();
10239 }
10240
10241 static void WINAPI wine_glMultiTexRenderbufferEXT( GLenum texunit, GLenum target, GLuint renderbuffer ) {
10242   void (*func_glMultiTexRenderbufferEXT)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glMultiTexRenderbufferEXT];
10243   TRACE("(%d, %d, %d)\n", texunit, target, renderbuffer );
10244   ENTER_GL();
10245   func_glMultiTexRenderbufferEXT( texunit, target, renderbuffer );
10246   LEAVE_GL();
10247 }
10248
10249 static void WINAPI wine_glMultiTexSubImage1DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, GLvoid* pixels ) {
10250   void (*func_glMultiTexSubImage1DEXT)( GLenum, GLenum, GLint, GLint, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glMultiTexSubImage1DEXT];
10251   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, width, format, type, pixels );
10252   ENTER_GL();
10253   func_glMultiTexSubImage1DEXT( texunit, target, level, xoffset, width, format, type, pixels );
10254   LEAVE_GL();
10255 }
10256
10257 static void WINAPI wine_glMultiTexSubImage2DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels ) {
10258   void (*func_glMultiTexSubImage2DEXT)( GLenum, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glMultiTexSubImage2DEXT];
10259   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, yoffset, width, height, format, type, pixels );
10260   ENTER_GL();
10261   func_glMultiTexSubImage2DEXT( texunit, target, level, xoffset, yoffset, width, height, format, type, pixels );
10262   LEAVE_GL();
10263 }
10264
10265 static void WINAPI wine_glMultiTexSubImage3DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid* pixels ) {
10266   void (*func_glMultiTexSubImage3DEXT)( GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glMultiTexSubImage3DEXT];
10267   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
10268   ENTER_GL();
10269   func_glMultiTexSubImage3DEXT( texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
10270   LEAVE_GL();
10271 }
10272
10273 static void WINAPI wine_glNamedBufferDataEXT( GLuint buffer, INT_PTR size, GLvoid* data, GLenum usage ) {
10274   void (*func_glNamedBufferDataEXT)( GLuint, INT_PTR, GLvoid*, GLenum ) = extension_funcs[EXT_glNamedBufferDataEXT];
10275   TRACE("(%d, %ld, %p, %d)\n", buffer, size, data, usage );
10276   ENTER_GL();
10277   func_glNamedBufferDataEXT( buffer, size, data, usage );
10278   LEAVE_GL();
10279 }
10280
10281 static void WINAPI wine_glNamedBufferSubDataEXT( GLuint buffer, INT_PTR offset, INT_PTR size, GLvoid* data ) {
10282   void (*func_glNamedBufferSubDataEXT)( GLuint, INT_PTR, INT_PTR, GLvoid* ) = extension_funcs[EXT_glNamedBufferSubDataEXT];
10283   TRACE("(%d, %ld, %ld, %p)\n", buffer, offset, size, data );
10284   ENTER_GL();
10285   func_glNamedBufferSubDataEXT( buffer, offset, size, data );
10286   LEAVE_GL();
10287 }
10288
10289 static void WINAPI wine_glNamedCopyBufferSubDataEXT( GLuint readBuffer, GLuint writeBuffer, INT_PTR readOffset, INT_PTR writeOffset, INT_PTR size ) {
10290   void (*func_glNamedCopyBufferSubDataEXT)( GLuint, GLuint, INT_PTR, INT_PTR, INT_PTR ) = extension_funcs[EXT_glNamedCopyBufferSubDataEXT];
10291   TRACE("(%d, %d, %ld, %ld, %ld)\n", readBuffer, writeBuffer, readOffset, writeOffset, size );
10292   ENTER_GL();
10293   func_glNamedCopyBufferSubDataEXT( readBuffer, writeBuffer, readOffset, writeOffset, size );
10294   LEAVE_GL();
10295 }
10296
10297 static void WINAPI wine_glNamedFramebufferRenderbufferEXT( GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) {
10298   void (*func_glNamedFramebufferRenderbufferEXT)( GLuint, GLenum, GLenum, GLuint ) = extension_funcs[EXT_glNamedFramebufferRenderbufferEXT];
10299   TRACE("(%d, %d, %d, %d)\n", framebuffer, attachment, renderbuffertarget, renderbuffer );
10300   ENTER_GL();
10301   func_glNamedFramebufferRenderbufferEXT( framebuffer, attachment, renderbuffertarget, renderbuffer );
10302   LEAVE_GL();
10303 }
10304
10305 static void WINAPI wine_glNamedFramebufferTexture1DEXT( GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
10306   void (*func_glNamedFramebufferTexture1DEXT)( GLuint, GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glNamedFramebufferTexture1DEXT];
10307   TRACE("(%d, %d, %d, %d, %d)\n", framebuffer, attachment, textarget, texture, level );
10308   ENTER_GL();
10309   func_glNamedFramebufferTexture1DEXT( framebuffer, attachment, textarget, texture, level );
10310   LEAVE_GL();
10311 }
10312
10313 static void WINAPI wine_glNamedFramebufferTexture2DEXT( GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
10314   void (*func_glNamedFramebufferTexture2DEXT)( GLuint, GLenum, GLenum, GLuint, GLint ) = extension_funcs[EXT_glNamedFramebufferTexture2DEXT];
10315   TRACE("(%d, %d, %d, %d, %d)\n", framebuffer, attachment, textarget, texture, level );
10316   ENTER_GL();
10317   func_glNamedFramebufferTexture2DEXT( framebuffer, attachment, textarget, texture, level );
10318   LEAVE_GL();
10319 }
10320
10321 static void WINAPI wine_glNamedFramebufferTexture3DEXT( GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset ) {
10322   void (*func_glNamedFramebufferTexture3DEXT)( GLuint, GLenum, GLenum, GLuint, GLint, GLint ) = extension_funcs[EXT_glNamedFramebufferTexture3DEXT];
10323   TRACE("(%d, %d, %d, %d, %d, %d)\n", framebuffer, attachment, textarget, texture, level, zoffset );
10324   ENTER_GL();
10325   func_glNamedFramebufferTexture3DEXT( framebuffer, attachment, textarget, texture, level, zoffset );
10326   LEAVE_GL();
10327 }
10328
10329 static void WINAPI wine_glNamedFramebufferTextureEXT( GLuint framebuffer, GLenum attachment, GLuint texture, GLint level ) {
10330   void (*func_glNamedFramebufferTextureEXT)( GLuint, GLenum, GLuint, GLint ) = extension_funcs[EXT_glNamedFramebufferTextureEXT];
10331   TRACE("(%d, %d, %d, %d)\n", framebuffer, attachment, texture, level );
10332   ENTER_GL();
10333   func_glNamedFramebufferTextureEXT( framebuffer, attachment, texture, level );
10334   LEAVE_GL();
10335 }
10336
10337 static void WINAPI wine_glNamedFramebufferTextureFaceEXT( GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face ) {
10338   void (*func_glNamedFramebufferTextureFaceEXT)( GLuint, GLenum, GLuint, GLint, GLenum ) = extension_funcs[EXT_glNamedFramebufferTextureFaceEXT];
10339   TRACE("(%d, %d, %d, %d, %d)\n", framebuffer, attachment, texture, level, face );
10340   ENTER_GL();
10341   func_glNamedFramebufferTextureFaceEXT( framebuffer, attachment, texture, level, face );
10342   LEAVE_GL();
10343 }
10344
10345 static void WINAPI wine_glNamedFramebufferTextureLayerEXT( GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer ) {
10346   void (*func_glNamedFramebufferTextureLayerEXT)( GLuint, GLenum, GLuint, GLint, GLint ) = extension_funcs[EXT_glNamedFramebufferTextureLayerEXT];
10347   TRACE("(%d, %d, %d, %d, %d)\n", framebuffer, attachment, texture, level, layer );
10348   ENTER_GL();
10349   func_glNamedFramebufferTextureLayerEXT( framebuffer, attachment, texture, level, layer );
10350   LEAVE_GL();
10351 }
10352
10353 static void WINAPI wine_glNamedProgramLocalParameter4dEXT( GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
10354   void (*func_glNamedProgramLocalParameter4dEXT)( GLuint, GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glNamedProgramLocalParameter4dEXT];
10355   TRACE("(%d, %d, %d, %f, %f, %f, %f)\n", program, target, index, x, y, z, w );
10356   ENTER_GL();
10357   func_glNamedProgramLocalParameter4dEXT( program, target, index, x, y, z, w );
10358   LEAVE_GL();
10359 }
10360
10361 static void WINAPI wine_glNamedProgramLocalParameter4dvEXT( GLuint program, GLenum target, GLuint index, GLdouble* params ) {
10362   void (*func_glNamedProgramLocalParameter4dvEXT)( GLuint, GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glNamedProgramLocalParameter4dvEXT];
10363   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
10364   ENTER_GL();
10365   func_glNamedProgramLocalParameter4dvEXT( program, target, index, params );
10366   LEAVE_GL();
10367 }
10368
10369 static void WINAPI wine_glNamedProgramLocalParameter4fEXT( GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
10370   void (*func_glNamedProgramLocalParameter4fEXT)( GLuint, GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glNamedProgramLocalParameter4fEXT];
10371   TRACE("(%d, %d, %d, %f, %f, %f, %f)\n", program, target, index, x, y, z, w );
10372   ENTER_GL();
10373   func_glNamedProgramLocalParameter4fEXT( program, target, index, x, y, z, w );
10374   LEAVE_GL();
10375 }
10376
10377 static void WINAPI wine_glNamedProgramLocalParameter4fvEXT( GLuint program, GLenum target, GLuint index, GLfloat* params ) {
10378   void (*func_glNamedProgramLocalParameter4fvEXT)( GLuint, GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glNamedProgramLocalParameter4fvEXT];
10379   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
10380   ENTER_GL();
10381   func_glNamedProgramLocalParameter4fvEXT( program, target, index, params );
10382   LEAVE_GL();
10383 }
10384
10385 static void WINAPI wine_glNamedProgramLocalParameterI4iEXT( GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w ) {
10386   void (*func_glNamedProgramLocalParameterI4iEXT)( GLuint, GLenum, GLuint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glNamedProgramLocalParameterI4iEXT];
10387   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", program, target, index, x, y, z, w );
10388   ENTER_GL();
10389   func_glNamedProgramLocalParameterI4iEXT( program, target, index, x, y, z, w );
10390   LEAVE_GL();
10391 }
10392
10393 static void WINAPI wine_glNamedProgramLocalParameterI4ivEXT( GLuint program, GLenum target, GLuint index, GLint* params ) {
10394   void (*func_glNamedProgramLocalParameterI4ivEXT)( GLuint, GLenum, GLuint, GLint* ) = extension_funcs[EXT_glNamedProgramLocalParameterI4ivEXT];
10395   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
10396   ENTER_GL();
10397   func_glNamedProgramLocalParameterI4ivEXT( program, target, index, params );
10398   LEAVE_GL();
10399 }
10400
10401 static void WINAPI wine_glNamedProgramLocalParameterI4uiEXT( GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
10402   void (*func_glNamedProgramLocalParameterI4uiEXT)( GLuint, GLenum, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glNamedProgramLocalParameterI4uiEXT];
10403   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", program, target, index, x, y, z, w );
10404   ENTER_GL();
10405   func_glNamedProgramLocalParameterI4uiEXT( program, target, index, x, y, z, w );
10406   LEAVE_GL();
10407 }
10408
10409 static void WINAPI wine_glNamedProgramLocalParameterI4uivEXT( GLuint program, GLenum target, GLuint index, GLuint* params ) {
10410   void (*func_glNamedProgramLocalParameterI4uivEXT)( GLuint, GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glNamedProgramLocalParameterI4uivEXT];
10411   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
10412   ENTER_GL();
10413   func_glNamedProgramLocalParameterI4uivEXT( program, target, index, params );
10414   LEAVE_GL();
10415 }
10416
10417 static void WINAPI wine_glNamedProgramLocalParameters4fvEXT( GLuint program, GLenum target, GLuint index, GLsizei count, GLfloat* params ) {
10418   void (*func_glNamedProgramLocalParameters4fvEXT)( GLuint, GLenum, GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glNamedProgramLocalParameters4fvEXT];
10419   TRACE("(%d, %d, %d, %d, %p)\n", program, target, index, count, params );
10420   ENTER_GL();
10421   func_glNamedProgramLocalParameters4fvEXT( program, target, index, count, params );
10422   LEAVE_GL();
10423 }
10424
10425 static void WINAPI wine_glNamedProgramLocalParametersI4ivEXT( GLuint program, GLenum target, GLuint index, GLsizei count, GLint* params ) {
10426   void (*func_glNamedProgramLocalParametersI4ivEXT)( GLuint, GLenum, GLuint, GLsizei, GLint* ) = extension_funcs[EXT_glNamedProgramLocalParametersI4ivEXT];
10427   TRACE("(%d, %d, %d, %d, %p)\n", program, target, index, count, params );
10428   ENTER_GL();
10429   func_glNamedProgramLocalParametersI4ivEXT( program, target, index, count, params );
10430   LEAVE_GL();
10431 }
10432
10433 static void WINAPI wine_glNamedProgramLocalParametersI4uivEXT( GLuint program, GLenum target, GLuint index, GLsizei count, GLuint* params ) {
10434   void (*func_glNamedProgramLocalParametersI4uivEXT)( GLuint, GLenum, GLuint, GLsizei, GLuint* ) = extension_funcs[EXT_glNamedProgramLocalParametersI4uivEXT];
10435   TRACE("(%d, %d, %d, %d, %p)\n", program, target, index, count, params );
10436   ENTER_GL();
10437   func_glNamedProgramLocalParametersI4uivEXT( program, target, index, count, params );
10438   LEAVE_GL();
10439 }
10440
10441 static void WINAPI wine_glNamedProgramStringEXT( GLuint program, GLenum target, GLenum format, GLsizei len, GLvoid* string ) {
10442   void (*func_glNamedProgramStringEXT)( GLuint, GLenum, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glNamedProgramStringEXT];
10443   TRACE("(%d, %d, %d, %d, %p)\n", program, target, format, len, string );
10444   ENTER_GL();
10445   func_glNamedProgramStringEXT( program, target, format, len, string );
10446   LEAVE_GL();
10447 }
10448
10449 static void WINAPI wine_glNamedRenderbufferStorageEXT( GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height ) {
10450   void (*func_glNamedRenderbufferStorageEXT)( GLuint, GLenum, GLsizei, GLsizei ) = extension_funcs[EXT_glNamedRenderbufferStorageEXT];
10451   TRACE("(%d, %d, %d, %d)\n", renderbuffer, internalformat, width, height );
10452   ENTER_GL();
10453   func_glNamedRenderbufferStorageEXT( renderbuffer, internalformat, width, height );
10454   LEAVE_GL();
10455 }
10456
10457 static void WINAPI wine_glNamedRenderbufferStorageMultisampleCoverageEXT( GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height ) {
10458   void (*func_glNamedRenderbufferStorageMultisampleCoverageEXT)( GLuint, GLsizei, GLsizei, GLenum, GLsizei, GLsizei ) = extension_funcs[EXT_glNamedRenderbufferStorageMultisampleCoverageEXT];
10459   TRACE("(%d, %d, %d, %d, %d, %d)\n", renderbuffer, coverageSamples, colorSamples, internalformat, width, height );
10460   ENTER_GL();
10461   func_glNamedRenderbufferStorageMultisampleCoverageEXT( renderbuffer, coverageSamples, colorSamples, internalformat, width, height );
10462   LEAVE_GL();
10463 }
10464
10465 static void WINAPI wine_glNamedRenderbufferStorageMultisampleEXT( GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) {
10466   void (*func_glNamedRenderbufferStorageMultisampleEXT)( GLuint, GLsizei, GLenum, GLsizei, GLsizei ) = extension_funcs[EXT_glNamedRenderbufferStorageMultisampleEXT];
10467   TRACE("(%d, %d, %d, %d, %d)\n", renderbuffer, samples, internalformat, width, height );
10468   ENTER_GL();
10469   func_glNamedRenderbufferStorageMultisampleEXT( renderbuffer, samples, internalformat, width, height );
10470   LEAVE_GL();
10471 }
10472
10473 static void WINAPI wine_glNamedStringARB( GLenum type, GLint namelen, char* name, GLint stringlen, char* string ) {
10474   void (*func_glNamedStringARB)( GLenum, GLint, char*, GLint, char* ) = extension_funcs[EXT_glNamedStringARB];
10475   TRACE("(%d, %d, %p, %d, %p)\n", type, namelen, name, stringlen, string );
10476   ENTER_GL();
10477   func_glNamedStringARB( type, namelen, name, stringlen, string );
10478   LEAVE_GL();
10479 }
10480
10481 static GLuint WINAPI wine_glNewBufferRegion( GLenum type ) {
10482   GLuint ret_value;
10483   GLuint (*func_glNewBufferRegion)( GLenum ) = extension_funcs[EXT_glNewBufferRegion];
10484   TRACE("(%d)\n", type );
10485   ENTER_GL();
10486   ret_value = func_glNewBufferRegion( type );
10487   LEAVE_GL();
10488   return ret_value;
10489 }
10490
10491 static GLuint WINAPI wine_glNewObjectBufferATI( GLsizei size, GLvoid* pointer, GLenum usage ) {
10492   GLuint ret_value;
10493   GLuint (*func_glNewObjectBufferATI)( GLsizei, GLvoid*, GLenum ) = extension_funcs[EXT_glNewObjectBufferATI];
10494   TRACE("(%d, %p, %d)\n", size, pointer, usage );
10495   ENTER_GL();
10496   ret_value = func_glNewObjectBufferATI( size, pointer, usage );
10497   LEAVE_GL();
10498   return ret_value;
10499 }
10500
10501 static void WINAPI wine_glNormal3fVertex3fSUN( GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
10502   void (*func_glNormal3fVertex3fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glNormal3fVertex3fSUN];
10503   TRACE("(%f, %f, %f, %f, %f, %f)\n", nx, ny, nz, x, y, z );
10504   ENTER_GL();
10505   func_glNormal3fVertex3fSUN( nx, ny, nz, x, y, z );
10506   LEAVE_GL();
10507 }
10508
10509 static void WINAPI wine_glNormal3fVertex3fvSUN( GLfloat* n, GLfloat* v ) {
10510   void (*func_glNormal3fVertex3fvSUN)( GLfloat*, GLfloat* ) = extension_funcs[EXT_glNormal3fVertex3fvSUN];
10511   TRACE("(%p, %p)\n", n, v );
10512   ENTER_GL();
10513   func_glNormal3fVertex3fvSUN( n, v );
10514   LEAVE_GL();
10515 }
10516
10517 static void WINAPI wine_glNormal3hNV( unsigned short nx, unsigned short ny, unsigned short nz ) {
10518   void (*func_glNormal3hNV)( unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glNormal3hNV];
10519   TRACE("(%d, %d, %d)\n", nx, ny, nz );
10520   ENTER_GL();
10521   func_glNormal3hNV( nx, ny, nz );
10522   LEAVE_GL();
10523 }
10524
10525 static void WINAPI wine_glNormal3hvNV( unsigned short* v ) {
10526   void (*func_glNormal3hvNV)( unsigned short* ) = extension_funcs[EXT_glNormal3hvNV];
10527   TRACE("(%p)\n", v );
10528   ENTER_GL();
10529   func_glNormal3hvNV( v );
10530   LEAVE_GL();
10531 }
10532
10533 static void WINAPI wine_glNormalFormatNV( GLenum type, GLsizei stride ) {
10534   void (*func_glNormalFormatNV)( GLenum, GLsizei ) = extension_funcs[EXT_glNormalFormatNV];
10535   TRACE("(%d, %d)\n", type, stride );
10536   ENTER_GL();
10537   func_glNormalFormatNV( type, stride );
10538   LEAVE_GL();
10539 }
10540
10541 static void WINAPI wine_glNormalP3ui( GLenum type, GLuint coords ) {
10542   void (*func_glNormalP3ui)( GLenum, GLuint ) = extension_funcs[EXT_glNormalP3ui];
10543   TRACE("(%d, %d)\n", type, coords );
10544   ENTER_GL();
10545   func_glNormalP3ui( type, coords );
10546   LEAVE_GL();
10547 }
10548
10549 static void WINAPI wine_glNormalP3uiv( GLenum type, GLuint* coords ) {
10550   void (*func_glNormalP3uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glNormalP3uiv];
10551   TRACE("(%d, %p)\n", type, coords );
10552   ENTER_GL();
10553   func_glNormalP3uiv( type, coords );
10554   LEAVE_GL();
10555 }
10556
10557 static void WINAPI wine_glNormalPointerEXT( GLenum type, GLsizei stride, GLsizei count, GLvoid* pointer ) {
10558   void (*func_glNormalPointerEXT)( GLenum, GLsizei, GLsizei, GLvoid* ) = extension_funcs[EXT_glNormalPointerEXT];
10559   TRACE("(%d, %d, %d, %p)\n", type, stride, count, pointer );
10560   ENTER_GL();
10561   func_glNormalPointerEXT( type, stride, count, pointer );
10562   LEAVE_GL();
10563 }
10564
10565 static void WINAPI wine_glNormalPointerListIBM( GLenum type, GLint stride, GLvoid** pointer, GLint ptrstride ) {
10566   void (*func_glNormalPointerListIBM)( GLenum, GLint, GLvoid**, GLint ) = extension_funcs[EXT_glNormalPointerListIBM];
10567   TRACE("(%d, %d, %p, %d)\n", type, stride, pointer, ptrstride );
10568   ENTER_GL();
10569   func_glNormalPointerListIBM( type, stride, pointer, ptrstride );
10570   LEAVE_GL();
10571 }
10572
10573 static void WINAPI wine_glNormalPointervINTEL( GLenum type, GLvoid** pointer ) {
10574   void (*func_glNormalPointervINTEL)( GLenum, GLvoid** ) = extension_funcs[EXT_glNormalPointervINTEL];
10575   TRACE("(%d, %p)\n", type, pointer );
10576   ENTER_GL();
10577   func_glNormalPointervINTEL( type, pointer );
10578   LEAVE_GL();
10579 }
10580
10581 static void WINAPI wine_glNormalStream3bATI( GLenum stream, GLbyte nx, GLbyte ny, GLbyte nz ) {
10582   void (*func_glNormalStream3bATI)( GLenum, GLbyte, GLbyte, GLbyte ) = extension_funcs[EXT_glNormalStream3bATI];
10583   TRACE("(%d, %d, %d, %d)\n", stream, nx, ny, nz );
10584   ENTER_GL();
10585   func_glNormalStream3bATI( stream, nx, ny, nz );
10586   LEAVE_GL();
10587 }
10588
10589 static void WINAPI wine_glNormalStream3bvATI( GLenum stream, GLbyte* coords ) {
10590   void (*func_glNormalStream3bvATI)( GLenum, GLbyte* ) = extension_funcs[EXT_glNormalStream3bvATI];
10591   TRACE("(%d, %p)\n", stream, coords );
10592   ENTER_GL();
10593   func_glNormalStream3bvATI( stream, coords );
10594   LEAVE_GL();
10595 }
10596
10597 static void WINAPI wine_glNormalStream3dATI( GLenum stream, GLdouble nx, GLdouble ny, GLdouble nz ) {
10598   void (*func_glNormalStream3dATI)( GLenum, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glNormalStream3dATI];
10599   TRACE("(%d, %f, %f, %f)\n", stream, nx, ny, nz );
10600   ENTER_GL();
10601   func_glNormalStream3dATI( stream, nx, ny, nz );
10602   LEAVE_GL();
10603 }
10604
10605 static void WINAPI wine_glNormalStream3dvATI( GLenum stream, GLdouble* coords ) {
10606   void (*func_glNormalStream3dvATI)( GLenum, GLdouble* ) = extension_funcs[EXT_glNormalStream3dvATI];
10607   TRACE("(%d, %p)\n", stream, coords );
10608   ENTER_GL();
10609   func_glNormalStream3dvATI( stream, coords );
10610   LEAVE_GL();
10611 }
10612
10613 static void WINAPI wine_glNormalStream3fATI( GLenum stream, GLfloat nx, GLfloat ny, GLfloat nz ) {
10614   void (*func_glNormalStream3fATI)( GLenum, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glNormalStream3fATI];
10615   TRACE("(%d, %f, %f, %f)\n", stream, nx, ny, nz );
10616   ENTER_GL();
10617   func_glNormalStream3fATI( stream, nx, ny, nz );
10618   LEAVE_GL();
10619 }
10620
10621 static void WINAPI wine_glNormalStream3fvATI( GLenum stream, GLfloat* coords ) {
10622   void (*func_glNormalStream3fvATI)( GLenum, GLfloat* ) = extension_funcs[EXT_glNormalStream3fvATI];
10623   TRACE("(%d, %p)\n", stream, coords );
10624   ENTER_GL();
10625   func_glNormalStream3fvATI( stream, coords );
10626   LEAVE_GL();
10627 }
10628
10629 static void WINAPI wine_glNormalStream3iATI( GLenum stream, GLint nx, GLint ny, GLint nz ) {
10630   void (*func_glNormalStream3iATI)( GLenum, GLint, GLint, GLint ) = extension_funcs[EXT_glNormalStream3iATI];
10631   TRACE("(%d, %d, %d, %d)\n", stream, nx, ny, nz );
10632   ENTER_GL();
10633   func_glNormalStream3iATI( stream, nx, ny, nz );
10634   LEAVE_GL();
10635 }
10636
10637 static void WINAPI wine_glNormalStream3ivATI( GLenum stream, GLint* coords ) {
10638   void (*func_glNormalStream3ivATI)( GLenum, GLint* ) = extension_funcs[EXT_glNormalStream3ivATI];
10639   TRACE("(%d, %p)\n", stream, coords );
10640   ENTER_GL();
10641   func_glNormalStream3ivATI( stream, coords );
10642   LEAVE_GL();
10643 }
10644
10645 static void WINAPI wine_glNormalStream3sATI( GLenum stream, GLshort nx, GLshort ny, GLshort nz ) {
10646   void (*func_glNormalStream3sATI)( GLenum, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glNormalStream3sATI];
10647   TRACE("(%d, %d, %d, %d)\n", stream, nx, ny, nz );
10648   ENTER_GL();
10649   func_glNormalStream3sATI( stream, nx, ny, nz );
10650   LEAVE_GL();
10651 }
10652
10653 static void WINAPI wine_glNormalStream3svATI( GLenum stream, GLshort* coords ) {
10654   void (*func_glNormalStream3svATI)( GLenum, GLshort* ) = extension_funcs[EXT_glNormalStream3svATI];
10655   TRACE("(%d, %p)\n", stream, coords );
10656   ENTER_GL();
10657   func_glNormalStream3svATI( stream, coords );
10658   LEAVE_GL();
10659 }
10660
10661 static GLenum WINAPI wine_glObjectPurgeableAPPLE( GLenum objectType, GLuint name, GLenum option ) {
10662   GLenum ret_value;
10663   GLenum (*func_glObjectPurgeableAPPLE)( GLenum, GLuint, GLenum ) = extension_funcs[EXT_glObjectPurgeableAPPLE];
10664   TRACE("(%d, %d, %d)\n", objectType, name, option );
10665   ENTER_GL();
10666   ret_value = func_glObjectPurgeableAPPLE( objectType, name, option );
10667   LEAVE_GL();
10668   return ret_value;
10669 }
10670
10671 static GLenum WINAPI wine_glObjectUnpurgeableAPPLE( GLenum objectType, GLuint name, GLenum option ) {
10672   GLenum ret_value;
10673   GLenum (*func_glObjectUnpurgeableAPPLE)( GLenum, GLuint, GLenum ) = extension_funcs[EXT_glObjectUnpurgeableAPPLE];
10674   TRACE("(%d, %d, %d)\n", objectType, name, option );
10675   ENTER_GL();
10676   ret_value = func_glObjectUnpurgeableAPPLE( objectType, name, option );
10677   LEAVE_GL();
10678   return ret_value;
10679 }
10680
10681 static void WINAPI wine_glPNTrianglesfATI( GLenum pname, GLfloat param ) {
10682   void (*func_glPNTrianglesfATI)( GLenum, GLfloat ) = extension_funcs[EXT_glPNTrianglesfATI];
10683   TRACE("(%d, %f)\n", pname, param );
10684   ENTER_GL();
10685   func_glPNTrianglesfATI( pname, param );
10686   LEAVE_GL();
10687 }
10688
10689 static void WINAPI wine_glPNTrianglesiATI( GLenum pname, GLint param ) {
10690   void (*func_glPNTrianglesiATI)( GLenum, GLint ) = extension_funcs[EXT_glPNTrianglesiATI];
10691   TRACE("(%d, %d)\n", pname, param );
10692   ENTER_GL();
10693   func_glPNTrianglesiATI( pname, param );
10694   LEAVE_GL();
10695 }
10696
10697 static void WINAPI wine_glPassTexCoordATI( GLuint dst, GLuint coord, GLenum swizzle ) {
10698   void (*func_glPassTexCoordATI)( GLuint, GLuint, GLenum ) = extension_funcs[EXT_glPassTexCoordATI];
10699   TRACE("(%d, %d, %d)\n", dst, coord, swizzle );
10700   ENTER_GL();
10701   func_glPassTexCoordATI( dst, coord, swizzle );
10702   LEAVE_GL();
10703 }
10704
10705 static void WINAPI wine_glPatchParameterfv( GLenum pname, GLfloat* values ) {
10706   void (*func_glPatchParameterfv)( GLenum, GLfloat* ) = extension_funcs[EXT_glPatchParameterfv];
10707   TRACE("(%d, %p)\n", pname, values );
10708   ENTER_GL();
10709   func_glPatchParameterfv( pname, values );
10710   LEAVE_GL();
10711 }
10712
10713 static void WINAPI wine_glPatchParameteri( GLenum pname, GLint value ) {
10714   void (*func_glPatchParameteri)( GLenum, GLint ) = extension_funcs[EXT_glPatchParameteri];
10715   TRACE("(%d, %d)\n", pname, value );
10716   ENTER_GL();
10717   func_glPatchParameteri( pname, value );
10718   LEAVE_GL();
10719 }
10720
10721 static void WINAPI wine_glPauseTransformFeedback( void ) {
10722   void (*func_glPauseTransformFeedback)( void ) = extension_funcs[EXT_glPauseTransformFeedback];
10723   TRACE("()\n");
10724   ENTER_GL();
10725   func_glPauseTransformFeedback( );
10726   LEAVE_GL();
10727 }
10728
10729 static void WINAPI wine_glPauseTransformFeedbackNV( void ) {
10730   void (*func_glPauseTransformFeedbackNV)( void ) = extension_funcs[EXT_glPauseTransformFeedbackNV];
10731   TRACE("()\n");
10732   ENTER_GL();
10733   func_glPauseTransformFeedbackNV( );
10734   LEAVE_GL();
10735 }
10736
10737 static void WINAPI wine_glPixelDataRangeNV( GLenum target, GLsizei length, GLvoid* pointer ) {
10738   void (*func_glPixelDataRangeNV)( GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glPixelDataRangeNV];
10739   TRACE("(%d, %d, %p)\n", target, length, pointer );
10740   ENTER_GL();
10741   func_glPixelDataRangeNV( target, length, pointer );
10742   LEAVE_GL();
10743 }
10744
10745 static void WINAPI wine_glPixelTexGenParameterfSGIS( GLenum pname, GLfloat param ) {
10746   void (*func_glPixelTexGenParameterfSGIS)( GLenum, GLfloat ) = extension_funcs[EXT_glPixelTexGenParameterfSGIS];
10747   TRACE("(%d, %f)\n", pname, param );
10748   ENTER_GL();
10749   func_glPixelTexGenParameterfSGIS( pname, param );
10750   LEAVE_GL();
10751 }
10752
10753 static void WINAPI wine_glPixelTexGenParameterfvSGIS( GLenum pname, GLfloat* params ) {
10754   void (*func_glPixelTexGenParameterfvSGIS)( GLenum, GLfloat* ) = extension_funcs[EXT_glPixelTexGenParameterfvSGIS];
10755   TRACE("(%d, %p)\n", pname, params );
10756   ENTER_GL();
10757   func_glPixelTexGenParameterfvSGIS( pname, params );
10758   LEAVE_GL();
10759 }
10760
10761 static void WINAPI wine_glPixelTexGenParameteriSGIS( GLenum pname, GLint param ) {
10762   void (*func_glPixelTexGenParameteriSGIS)( GLenum, GLint ) = extension_funcs[EXT_glPixelTexGenParameteriSGIS];
10763   TRACE("(%d, %d)\n", pname, param );
10764   ENTER_GL();
10765   func_glPixelTexGenParameteriSGIS( pname, param );
10766   LEAVE_GL();
10767 }
10768
10769 static void WINAPI wine_glPixelTexGenParameterivSGIS( GLenum pname, GLint* params ) {
10770   void (*func_glPixelTexGenParameterivSGIS)( GLenum, GLint* ) = extension_funcs[EXT_glPixelTexGenParameterivSGIS];
10771   TRACE("(%d, %p)\n", pname, params );
10772   ENTER_GL();
10773   func_glPixelTexGenParameterivSGIS( pname, params );
10774   LEAVE_GL();
10775 }
10776
10777 static void WINAPI wine_glPixelTexGenSGIX( GLenum mode ) {
10778   void (*func_glPixelTexGenSGIX)( GLenum ) = extension_funcs[EXT_glPixelTexGenSGIX];
10779   TRACE("(%d)\n", mode );
10780   ENTER_GL();
10781   func_glPixelTexGenSGIX( mode );
10782   LEAVE_GL();
10783 }
10784
10785 static void WINAPI wine_glPixelTransformParameterfEXT( GLenum target, GLenum pname, GLfloat param ) {
10786   void (*func_glPixelTransformParameterfEXT)( GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glPixelTransformParameterfEXT];
10787   TRACE("(%d, %d, %f)\n", target, pname, param );
10788   ENTER_GL();
10789   func_glPixelTransformParameterfEXT( target, pname, param );
10790   LEAVE_GL();
10791 }
10792
10793 static void WINAPI wine_glPixelTransformParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
10794   void (*func_glPixelTransformParameterfvEXT)( GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glPixelTransformParameterfvEXT];
10795   TRACE("(%d, %d, %p)\n", target, pname, params );
10796   ENTER_GL();
10797   func_glPixelTransformParameterfvEXT( target, pname, params );
10798   LEAVE_GL();
10799 }
10800
10801 static void WINAPI wine_glPixelTransformParameteriEXT( GLenum target, GLenum pname, GLint param ) {
10802   void (*func_glPixelTransformParameteriEXT)( GLenum, GLenum, GLint ) = extension_funcs[EXT_glPixelTransformParameteriEXT];
10803   TRACE("(%d, %d, %d)\n", target, pname, param );
10804   ENTER_GL();
10805   func_glPixelTransformParameteriEXT( target, pname, param );
10806   LEAVE_GL();
10807 }
10808
10809 static void WINAPI wine_glPixelTransformParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
10810   void (*func_glPixelTransformParameterivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glPixelTransformParameterivEXT];
10811   TRACE("(%d, %d, %p)\n", target, pname, params );
10812   ENTER_GL();
10813   func_glPixelTransformParameterivEXT( target, pname, params );
10814   LEAVE_GL();
10815 }
10816
10817 static void WINAPI wine_glPointParameterf( GLenum pname, GLfloat param ) {
10818   void (*func_glPointParameterf)( GLenum, GLfloat ) = extension_funcs[EXT_glPointParameterf];
10819   TRACE("(%d, %f)\n", pname, param );
10820   ENTER_GL();
10821   func_glPointParameterf( pname, param );
10822   LEAVE_GL();
10823 }
10824
10825 static void WINAPI wine_glPointParameterfARB( GLenum pname, GLfloat param ) {
10826   void (*func_glPointParameterfARB)( GLenum, GLfloat ) = extension_funcs[EXT_glPointParameterfARB];
10827   TRACE("(%d, %f)\n", pname, param );
10828   ENTER_GL();
10829   func_glPointParameterfARB( pname, param );
10830   LEAVE_GL();
10831 }
10832
10833 static void WINAPI wine_glPointParameterfEXT( GLenum pname, GLfloat param ) {
10834   void (*func_glPointParameterfEXT)( GLenum, GLfloat ) = extension_funcs[EXT_glPointParameterfEXT];
10835   TRACE("(%d, %f)\n", pname, param );
10836   ENTER_GL();
10837   func_glPointParameterfEXT( pname, param );
10838   LEAVE_GL();
10839 }
10840
10841 static void WINAPI wine_glPointParameterfSGIS( GLenum pname, GLfloat param ) {
10842   void (*func_glPointParameterfSGIS)( GLenum, GLfloat ) = extension_funcs[EXT_glPointParameterfSGIS];
10843   TRACE("(%d, %f)\n", pname, param );
10844   ENTER_GL();
10845   func_glPointParameterfSGIS( pname, param );
10846   LEAVE_GL();
10847 }
10848
10849 static void WINAPI wine_glPointParameterfv( GLenum pname, GLfloat* params ) {
10850   void (*func_glPointParameterfv)( GLenum, GLfloat* ) = extension_funcs[EXT_glPointParameterfv];
10851   TRACE("(%d, %p)\n", pname, params );
10852   ENTER_GL();
10853   func_glPointParameterfv( pname, params );
10854   LEAVE_GL();
10855 }
10856
10857 static void WINAPI wine_glPointParameterfvARB( GLenum pname, GLfloat* params ) {
10858   void (*func_glPointParameterfvARB)( GLenum, GLfloat* ) = extension_funcs[EXT_glPointParameterfvARB];
10859   TRACE("(%d, %p)\n", pname, params );
10860   ENTER_GL();
10861   func_glPointParameterfvARB( pname, params );
10862   LEAVE_GL();
10863 }
10864
10865 static void WINAPI wine_glPointParameterfvEXT( GLenum pname, GLfloat* params ) {
10866   void (*func_glPointParameterfvEXT)( GLenum, GLfloat* ) = extension_funcs[EXT_glPointParameterfvEXT];
10867   TRACE("(%d, %p)\n", pname, params );
10868   ENTER_GL();
10869   func_glPointParameterfvEXT( pname, params );
10870   LEAVE_GL();
10871 }
10872
10873 static void WINAPI wine_glPointParameterfvSGIS( GLenum pname, GLfloat* params ) {
10874   void (*func_glPointParameterfvSGIS)( GLenum, GLfloat* ) = extension_funcs[EXT_glPointParameterfvSGIS];
10875   TRACE("(%d, %p)\n", pname, params );
10876   ENTER_GL();
10877   func_glPointParameterfvSGIS( pname, params );
10878   LEAVE_GL();
10879 }
10880
10881 static void WINAPI wine_glPointParameteri( GLenum pname, GLint param ) {
10882   void (*func_glPointParameteri)( GLenum, GLint ) = extension_funcs[EXT_glPointParameteri];
10883   TRACE("(%d, %d)\n", pname, param );
10884   ENTER_GL();
10885   func_glPointParameteri( pname, param );
10886   LEAVE_GL();
10887 }
10888
10889 static void WINAPI wine_glPointParameteriNV( GLenum pname, GLint param ) {
10890   void (*func_glPointParameteriNV)( GLenum, GLint ) = extension_funcs[EXT_glPointParameteriNV];
10891   TRACE("(%d, %d)\n", pname, param );
10892   ENTER_GL();
10893   func_glPointParameteriNV( pname, param );
10894   LEAVE_GL();
10895 }
10896
10897 static void WINAPI wine_glPointParameteriv( GLenum pname, GLint* params ) {
10898   void (*func_glPointParameteriv)( GLenum, GLint* ) = extension_funcs[EXT_glPointParameteriv];
10899   TRACE("(%d, %p)\n", pname, params );
10900   ENTER_GL();
10901   func_glPointParameteriv( pname, params );
10902   LEAVE_GL();
10903 }
10904
10905 static void WINAPI wine_glPointParameterivNV( GLenum pname, GLint* params ) {
10906   void (*func_glPointParameterivNV)( GLenum, GLint* ) = extension_funcs[EXT_glPointParameterivNV];
10907   TRACE("(%d, %p)\n", pname, params );
10908   ENTER_GL();
10909   func_glPointParameterivNV( pname, params );
10910   LEAVE_GL();
10911 }
10912
10913 static GLint WINAPI wine_glPollAsyncSGIX( GLuint* markerp ) {
10914   GLint ret_value;
10915   GLint (*func_glPollAsyncSGIX)( GLuint* ) = extension_funcs[EXT_glPollAsyncSGIX];
10916   TRACE("(%p)\n", markerp );
10917   ENTER_GL();
10918   ret_value = func_glPollAsyncSGIX( markerp );
10919   LEAVE_GL();
10920   return ret_value;
10921 }
10922
10923 static GLint WINAPI wine_glPollInstrumentsSGIX( GLint* marker_p ) {
10924   GLint ret_value;
10925   GLint (*func_glPollInstrumentsSGIX)( GLint* ) = extension_funcs[EXT_glPollInstrumentsSGIX];
10926   TRACE("(%p)\n", marker_p );
10927   ENTER_GL();
10928   ret_value = func_glPollInstrumentsSGIX( marker_p );
10929   LEAVE_GL();
10930   return ret_value;
10931 }
10932
10933 static void WINAPI wine_glPolygonOffsetEXT( GLfloat factor, GLfloat bias ) {
10934   void (*func_glPolygonOffsetEXT)( GLfloat, GLfloat ) = extension_funcs[EXT_glPolygonOffsetEXT];
10935   TRACE("(%f, %f)\n", factor, bias );
10936   ENTER_GL();
10937   func_glPolygonOffsetEXT( factor, bias );
10938   LEAVE_GL();
10939 }
10940
10941 static void WINAPI wine_glPresentFrameDualFillNV( GLuint video_slot, UINT64 minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3 ) {
10942   void (*func_glPresentFrameDualFillNV)( GLuint, UINT64, GLuint, GLuint, GLenum, GLenum, GLuint, GLenum, GLuint, GLenum, GLuint, GLenum, GLuint ) = extension_funcs[EXT_glPresentFrameDualFillNV];
10943   TRACE("(%d, %s, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", video_slot, wine_dbgstr_longlong(minPresentTime), beginPresentTimeId, presentDurationId, type, target0, fill0, target1, fill1, target2, fill2, target3, fill3 );
10944   ENTER_GL();
10945   func_glPresentFrameDualFillNV( video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, target1, fill1, target2, fill2, target3, fill3 );
10946   LEAVE_GL();
10947 }
10948
10949 static void WINAPI wine_glPresentFrameKeyedNV( GLuint video_slot, UINT64 minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1 ) {
10950   void (*func_glPresentFrameKeyedNV)( GLuint, UINT64, GLuint, GLuint, GLenum, GLenum, GLuint, GLuint, GLenum, GLuint, GLuint ) = extension_funcs[EXT_glPresentFrameKeyedNV];
10951   TRACE("(%d, %s, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", video_slot, wine_dbgstr_longlong(minPresentTime), beginPresentTimeId, presentDurationId, type, target0, fill0, key0, target1, fill1, key1 );
10952   ENTER_GL();
10953   func_glPresentFrameKeyedNV( video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, key0, target1, fill1, key1 );
10954   LEAVE_GL();
10955 }
10956
10957 static void WINAPI wine_glPrimitiveRestartIndex( GLuint index ) {
10958   void (*func_glPrimitiveRestartIndex)( GLuint ) = extension_funcs[EXT_glPrimitiveRestartIndex];
10959   TRACE("(%d)\n", index );
10960   ENTER_GL();
10961   func_glPrimitiveRestartIndex( index );
10962   LEAVE_GL();
10963 }
10964
10965 static void WINAPI wine_glPrimitiveRestartIndexNV( GLuint index ) {
10966   void (*func_glPrimitiveRestartIndexNV)( GLuint ) = extension_funcs[EXT_glPrimitiveRestartIndexNV];
10967   TRACE("(%d)\n", index );
10968   ENTER_GL();
10969   func_glPrimitiveRestartIndexNV( index );
10970   LEAVE_GL();
10971 }
10972
10973 static void WINAPI wine_glPrimitiveRestartNV( void ) {
10974   void (*func_glPrimitiveRestartNV)( void ) = extension_funcs[EXT_glPrimitiveRestartNV];
10975   TRACE("()\n");
10976   ENTER_GL();
10977   func_glPrimitiveRestartNV( );
10978   LEAVE_GL();
10979 }
10980
10981 static void WINAPI wine_glPrioritizeTexturesEXT( GLsizei n, GLuint* textures, GLclampf* priorities ) {
10982   void (*func_glPrioritizeTexturesEXT)( GLsizei, GLuint*, GLclampf* ) = extension_funcs[EXT_glPrioritizeTexturesEXT];
10983   TRACE("(%d, %p, %p)\n", n, textures, priorities );
10984   ENTER_GL();
10985   func_glPrioritizeTexturesEXT( n, textures, priorities );
10986   LEAVE_GL();
10987 }
10988
10989 static void WINAPI wine_glProgramBinary( GLuint program, GLenum binaryFormat, GLvoid* binary, GLsizei length ) {
10990   void (*func_glProgramBinary)( GLuint, GLenum, GLvoid*, GLsizei ) = extension_funcs[EXT_glProgramBinary];
10991   TRACE("(%d, %d, %p, %d)\n", program, binaryFormat, binary, length );
10992   ENTER_GL();
10993   func_glProgramBinary( program, binaryFormat, binary, length );
10994   LEAVE_GL();
10995 }
10996
10997 static void WINAPI wine_glProgramBufferParametersIivNV( GLenum target, GLuint buffer, GLuint index, GLsizei count, GLint* params ) {
10998   void (*func_glProgramBufferParametersIivNV)( GLenum, GLuint, GLuint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramBufferParametersIivNV];
10999   TRACE("(%d, %d, %d, %d, %p)\n", target, buffer, index, count, params );
11000   ENTER_GL();
11001   func_glProgramBufferParametersIivNV( target, buffer, index, count, params );
11002   LEAVE_GL();
11003 }
11004
11005 static void WINAPI wine_glProgramBufferParametersIuivNV( GLenum target, GLuint buffer, GLuint index, GLsizei count, GLuint* params ) {
11006   void (*func_glProgramBufferParametersIuivNV)( GLenum, GLuint, GLuint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramBufferParametersIuivNV];
11007   TRACE("(%d, %d, %d, %d, %p)\n", target, buffer, index, count, params );
11008   ENTER_GL();
11009   func_glProgramBufferParametersIuivNV( target, buffer, index, count, params );
11010   LEAVE_GL();
11011 }
11012
11013 static void WINAPI wine_glProgramBufferParametersfvNV( GLenum target, GLuint buffer, GLuint index, GLsizei count, GLfloat* params ) {
11014   void (*func_glProgramBufferParametersfvNV)( GLenum, GLuint, GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramBufferParametersfvNV];
11015   TRACE("(%d, %d, %d, %d, %p)\n", target, buffer, index, count, params );
11016   ENTER_GL();
11017   func_glProgramBufferParametersfvNV( target, buffer, index, count, params );
11018   LEAVE_GL();
11019 }
11020
11021 static void WINAPI wine_glProgramEnvParameter4dARB( GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11022   void (*func_glProgramEnvParameter4dARB)( GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramEnvParameter4dARB];
11023   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
11024   ENTER_GL();
11025   func_glProgramEnvParameter4dARB( target, index, x, y, z, w );
11026   LEAVE_GL();
11027 }
11028
11029 static void WINAPI wine_glProgramEnvParameter4dvARB( GLenum target, GLuint index, GLdouble* params ) {
11030   void (*func_glProgramEnvParameter4dvARB)( GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glProgramEnvParameter4dvARB];
11031   TRACE("(%d, %d, %p)\n", target, index, params );
11032   ENTER_GL();
11033   func_glProgramEnvParameter4dvARB( target, index, params );
11034   LEAVE_GL();
11035 }
11036
11037 static void WINAPI wine_glProgramEnvParameter4fARB( GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
11038   void (*func_glProgramEnvParameter4fARB)( GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramEnvParameter4fARB];
11039   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
11040   ENTER_GL();
11041   func_glProgramEnvParameter4fARB( target, index, x, y, z, w );
11042   LEAVE_GL();
11043 }
11044
11045 static void WINAPI wine_glProgramEnvParameter4fvARB( GLenum target, GLuint index, GLfloat* params ) {
11046   void (*func_glProgramEnvParameter4fvARB)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glProgramEnvParameter4fvARB];
11047   TRACE("(%d, %d, %p)\n", target, index, params );
11048   ENTER_GL();
11049   func_glProgramEnvParameter4fvARB( target, index, params );
11050   LEAVE_GL();
11051 }
11052
11053 static void WINAPI wine_glProgramEnvParameterI4iNV( GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w ) {
11054   void (*func_glProgramEnvParameterI4iNV)( GLenum, GLuint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glProgramEnvParameterI4iNV];
11055   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, index, x, y, z, w );
11056   ENTER_GL();
11057   func_glProgramEnvParameterI4iNV( target, index, x, y, z, w );
11058   LEAVE_GL();
11059 }
11060
11061 static void WINAPI wine_glProgramEnvParameterI4ivNV( GLenum target, GLuint index, GLint* params ) {
11062   void (*func_glProgramEnvParameterI4ivNV)( GLenum, GLuint, GLint* ) = extension_funcs[EXT_glProgramEnvParameterI4ivNV];
11063   TRACE("(%d, %d, %p)\n", target, index, params );
11064   ENTER_GL();
11065   func_glProgramEnvParameterI4ivNV( target, index, params );
11066   LEAVE_GL();
11067 }
11068
11069 static void WINAPI wine_glProgramEnvParameterI4uiNV( GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
11070   void (*func_glProgramEnvParameterI4uiNV)( GLenum, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glProgramEnvParameterI4uiNV];
11071   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, index, x, y, z, w );
11072   ENTER_GL();
11073   func_glProgramEnvParameterI4uiNV( target, index, x, y, z, w );
11074   LEAVE_GL();
11075 }
11076
11077 static void WINAPI wine_glProgramEnvParameterI4uivNV( GLenum target, GLuint index, GLuint* params ) {
11078   void (*func_glProgramEnvParameterI4uivNV)( GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glProgramEnvParameterI4uivNV];
11079   TRACE("(%d, %d, %p)\n", target, index, params );
11080   ENTER_GL();
11081   func_glProgramEnvParameterI4uivNV( target, index, params );
11082   LEAVE_GL();
11083 }
11084
11085 static void WINAPI wine_glProgramEnvParameters4fvEXT( GLenum target, GLuint index, GLsizei count, GLfloat* params ) {
11086   void (*func_glProgramEnvParameters4fvEXT)( GLenum, GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramEnvParameters4fvEXT];
11087   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
11088   ENTER_GL();
11089   func_glProgramEnvParameters4fvEXT( target, index, count, params );
11090   LEAVE_GL();
11091 }
11092
11093 static void WINAPI wine_glProgramEnvParametersI4ivNV( GLenum target, GLuint index, GLsizei count, GLint* params ) {
11094   void (*func_glProgramEnvParametersI4ivNV)( GLenum, GLuint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramEnvParametersI4ivNV];
11095   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
11096   ENTER_GL();
11097   func_glProgramEnvParametersI4ivNV( target, index, count, params );
11098   LEAVE_GL();
11099 }
11100
11101 static void WINAPI wine_glProgramEnvParametersI4uivNV( GLenum target, GLuint index, GLsizei count, GLuint* params ) {
11102   void (*func_glProgramEnvParametersI4uivNV)( GLenum, GLuint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramEnvParametersI4uivNV];
11103   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
11104   ENTER_GL();
11105   func_glProgramEnvParametersI4uivNV( target, index, count, params );
11106   LEAVE_GL();
11107 }
11108
11109 static void WINAPI wine_glProgramLocalParameter4dARB( GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11110   void (*func_glProgramLocalParameter4dARB)( GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramLocalParameter4dARB];
11111   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
11112   ENTER_GL();
11113   func_glProgramLocalParameter4dARB( target, index, x, y, z, w );
11114   LEAVE_GL();
11115 }
11116
11117 static void WINAPI wine_glProgramLocalParameter4dvARB( GLenum target, GLuint index, GLdouble* params ) {
11118   void (*func_glProgramLocalParameter4dvARB)( GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glProgramLocalParameter4dvARB];
11119   TRACE("(%d, %d, %p)\n", target, index, params );
11120   ENTER_GL();
11121   func_glProgramLocalParameter4dvARB( target, index, params );
11122   LEAVE_GL();
11123 }
11124
11125 static void WINAPI wine_glProgramLocalParameter4fARB( GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
11126   void (*func_glProgramLocalParameter4fARB)( GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramLocalParameter4fARB];
11127   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
11128   ENTER_GL();
11129   func_glProgramLocalParameter4fARB( target, index, x, y, z, w );
11130   LEAVE_GL();
11131 }
11132
11133 static void WINAPI wine_glProgramLocalParameter4fvARB( GLenum target, GLuint index, GLfloat* params ) {
11134   void (*func_glProgramLocalParameter4fvARB)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glProgramLocalParameter4fvARB];
11135   TRACE("(%d, %d, %p)\n", target, index, params );
11136   ENTER_GL();
11137   func_glProgramLocalParameter4fvARB( target, index, params );
11138   LEAVE_GL();
11139 }
11140
11141 static void WINAPI wine_glProgramLocalParameterI4iNV( GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w ) {
11142   void (*func_glProgramLocalParameterI4iNV)( GLenum, GLuint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glProgramLocalParameterI4iNV];
11143   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, index, x, y, z, w );
11144   ENTER_GL();
11145   func_glProgramLocalParameterI4iNV( target, index, x, y, z, w );
11146   LEAVE_GL();
11147 }
11148
11149 static void WINAPI wine_glProgramLocalParameterI4ivNV( GLenum target, GLuint index, GLint* params ) {
11150   void (*func_glProgramLocalParameterI4ivNV)( GLenum, GLuint, GLint* ) = extension_funcs[EXT_glProgramLocalParameterI4ivNV];
11151   TRACE("(%d, %d, %p)\n", target, index, params );
11152   ENTER_GL();
11153   func_glProgramLocalParameterI4ivNV( target, index, params );
11154   LEAVE_GL();
11155 }
11156
11157 static void WINAPI wine_glProgramLocalParameterI4uiNV( GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
11158   void (*func_glProgramLocalParameterI4uiNV)( GLenum, GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glProgramLocalParameterI4uiNV];
11159   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, index, x, y, z, w );
11160   ENTER_GL();
11161   func_glProgramLocalParameterI4uiNV( target, index, x, y, z, w );
11162   LEAVE_GL();
11163 }
11164
11165 static void WINAPI wine_glProgramLocalParameterI4uivNV( GLenum target, GLuint index, GLuint* params ) {
11166   void (*func_glProgramLocalParameterI4uivNV)( GLenum, GLuint, GLuint* ) = extension_funcs[EXT_glProgramLocalParameterI4uivNV];
11167   TRACE("(%d, %d, %p)\n", target, index, params );
11168   ENTER_GL();
11169   func_glProgramLocalParameterI4uivNV( target, index, params );
11170   LEAVE_GL();
11171 }
11172
11173 static void WINAPI wine_glProgramLocalParameters4fvEXT( GLenum target, GLuint index, GLsizei count, GLfloat* params ) {
11174   void (*func_glProgramLocalParameters4fvEXT)( GLenum, GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramLocalParameters4fvEXT];
11175   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
11176   ENTER_GL();
11177   func_glProgramLocalParameters4fvEXT( target, index, count, params );
11178   LEAVE_GL();
11179 }
11180
11181 static void WINAPI wine_glProgramLocalParametersI4ivNV( GLenum target, GLuint index, GLsizei count, GLint* params ) {
11182   void (*func_glProgramLocalParametersI4ivNV)( GLenum, GLuint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramLocalParametersI4ivNV];
11183   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
11184   ENTER_GL();
11185   func_glProgramLocalParametersI4ivNV( target, index, count, params );
11186   LEAVE_GL();
11187 }
11188
11189 static void WINAPI wine_glProgramLocalParametersI4uivNV( GLenum target, GLuint index, GLsizei count, GLuint* params ) {
11190   void (*func_glProgramLocalParametersI4uivNV)( GLenum, GLuint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramLocalParametersI4uivNV];
11191   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
11192   ENTER_GL();
11193   func_glProgramLocalParametersI4uivNV( target, index, count, params );
11194   LEAVE_GL();
11195 }
11196
11197 static void WINAPI wine_glProgramNamedParameter4dNV( GLuint id, GLsizei len, GLubyte* name, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11198   void (*func_glProgramNamedParameter4dNV)( GLuint, GLsizei, GLubyte*, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramNamedParameter4dNV];
11199   TRACE("(%d, %d, %p, %f, %f, %f, %f)\n", id, len, name, x, y, z, w );
11200   ENTER_GL();
11201   func_glProgramNamedParameter4dNV( id, len, name, x, y, z, w );
11202   LEAVE_GL();
11203 }
11204
11205 static void WINAPI wine_glProgramNamedParameter4dvNV( GLuint id, GLsizei len, GLubyte* name, GLdouble* v ) {
11206   void (*func_glProgramNamedParameter4dvNV)( GLuint, GLsizei, GLubyte*, GLdouble* ) = extension_funcs[EXT_glProgramNamedParameter4dvNV];
11207   TRACE("(%d, %d, %p, %p)\n", id, len, name, v );
11208   ENTER_GL();
11209   func_glProgramNamedParameter4dvNV( id, len, name, v );
11210   LEAVE_GL();
11211 }
11212
11213 static void WINAPI wine_glProgramNamedParameter4fNV( GLuint id, GLsizei len, GLubyte* name, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
11214   void (*func_glProgramNamedParameter4fNV)( GLuint, GLsizei, GLubyte*, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramNamedParameter4fNV];
11215   TRACE("(%d, %d, %p, %f, %f, %f, %f)\n", id, len, name, x, y, z, w );
11216   ENTER_GL();
11217   func_glProgramNamedParameter4fNV( id, len, name, x, y, z, w );
11218   LEAVE_GL();
11219 }
11220
11221 static void WINAPI wine_glProgramNamedParameter4fvNV( GLuint id, GLsizei len, GLubyte* name, GLfloat* v ) {
11222   void (*func_glProgramNamedParameter4fvNV)( GLuint, GLsizei, GLubyte*, GLfloat* ) = extension_funcs[EXT_glProgramNamedParameter4fvNV];
11223   TRACE("(%d, %d, %p, %p)\n", id, len, name, v );
11224   ENTER_GL();
11225   func_glProgramNamedParameter4fvNV( id, len, name, v );
11226   LEAVE_GL();
11227 }
11228
11229 static void WINAPI wine_glProgramParameter4dNV( GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11230   void (*func_glProgramParameter4dNV)( GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramParameter4dNV];
11231   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
11232   ENTER_GL();
11233   func_glProgramParameter4dNV( target, index, x, y, z, w );
11234   LEAVE_GL();
11235 }
11236
11237 static void WINAPI wine_glProgramParameter4dvNV( GLenum target, GLuint index, GLdouble* v ) {
11238   void (*func_glProgramParameter4dvNV)( GLenum, GLuint, GLdouble* ) = extension_funcs[EXT_glProgramParameter4dvNV];
11239   TRACE("(%d, %d, %p)\n", target, index, v );
11240   ENTER_GL();
11241   func_glProgramParameter4dvNV( target, index, v );
11242   LEAVE_GL();
11243 }
11244
11245 static void WINAPI wine_glProgramParameter4fNV( GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
11246   void (*func_glProgramParameter4fNV)( GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramParameter4fNV];
11247   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
11248   ENTER_GL();
11249   func_glProgramParameter4fNV( target, index, x, y, z, w );
11250   LEAVE_GL();
11251 }
11252
11253 static void WINAPI wine_glProgramParameter4fvNV( GLenum target, GLuint index, GLfloat* v ) {
11254   void (*func_glProgramParameter4fvNV)( GLenum, GLuint, GLfloat* ) = extension_funcs[EXT_glProgramParameter4fvNV];
11255   TRACE("(%d, %d, %p)\n", target, index, v );
11256   ENTER_GL();
11257   func_glProgramParameter4fvNV( target, index, v );
11258   LEAVE_GL();
11259 }
11260
11261 static void WINAPI wine_glProgramParameteri( GLuint program, GLenum pname, GLint value ) {
11262   void (*func_glProgramParameteri)( GLuint, GLenum, GLint ) = extension_funcs[EXT_glProgramParameteri];
11263   TRACE("(%d, %d, %d)\n", program, pname, value );
11264   ENTER_GL();
11265   func_glProgramParameteri( program, pname, value );
11266   LEAVE_GL();
11267 }
11268
11269 static void WINAPI wine_glProgramParameteriARB( GLuint program, GLenum pname, GLint value ) {
11270   void (*func_glProgramParameteriARB)( GLuint, GLenum, GLint ) = extension_funcs[EXT_glProgramParameteriARB];
11271   TRACE("(%d, %d, %d)\n", program, pname, value );
11272   ENTER_GL();
11273   func_glProgramParameteriARB( program, pname, value );
11274   LEAVE_GL();
11275 }
11276
11277 static void WINAPI wine_glProgramParameteriEXT( GLuint program, GLenum pname, GLint value ) {
11278   void (*func_glProgramParameteriEXT)( GLuint, GLenum, GLint ) = extension_funcs[EXT_glProgramParameteriEXT];
11279   TRACE("(%d, %d, %d)\n", program, pname, value );
11280   ENTER_GL();
11281   func_glProgramParameteriEXT( program, pname, value );
11282   LEAVE_GL();
11283 }
11284
11285 static void WINAPI wine_glProgramParameters4dvNV( GLenum target, GLuint index, GLuint count, GLdouble* v ) {
11286   void (*func_glProgramParameters4dvNV)( GLenum, GLuint, GLuint, GLdouble* ) = extension_funcs[EXT_glProgramParameters4dvNV];
11287   TRACE("(%d, %d, %d, %p)\n", target, index, count, v );
11288   ENTER_GL();
11289   func_glProgramParameters4dvNV( target, index, count, v );
11290   LEAVE_GL();
11291 }
11292
11293 static void WINAPI wine_glProgramParameters4fvNV( GLenum target, GLuint index, GLuint count, GLfloat* v ) {
11294   void (*func_glProgramParameters4fvNV)( GLenum, GLuint, GLuint, GLfloat* ) = extension_funcs[EXT_glProgramParameters4fvNV];
11295   TRACE("(%d, %d, %d, %p)\n", target, index, count, v );
11296   ENTER_GL();
11297   func_glProgramParameters4fvNV( target, index, count, v );
11298   LEAVE_GL();
11299 }
11300
11301 static void WINAPI wine_glProgramStringARB( GLenum target, GLenum format, GLsizei len, GLvoid* string ) {
11302   void (*func_glProgramStringARB)( GLenum, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glProgramStringARB];
11303   TRACE("(%d, %d, %d, %p)\n", target, format, len, string );
11304   ENTER_GL();
11305   func_glProgramStringARB( target, format, len, string );
11306   LEAVE_GL();
11307 }
11308
11309 static void WINAPI wine_glProgramSubroutineParametersuivNV( GLenum target, GLsizei count, GLuint* params ) {
11310   void (*func_glProgramSubroutineParametersuivNV)( GLenum, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramSubroutineParametersuivNV];
11311   TRACE("(%d, %d, %p)\n", target, count, params );
11312   ENTER_GL();
11313   func_glProgramSubroutineParametersuivNV( target, count, params );
11314   LEAVE_GL();
11315 }
11316
11317 static void WINAPI wine_glProgramUniform1d( GLuint program, GLint location, GLdouble v0 ) {
11318   void (*func_glProgramUniform1d)( GLuint, GLint, GLdouble ) = extension_funcs[EXT_glProgramUniform1d];
11319   TRACE("(%d, %d, %f)\n", program, location, v0 );
11320   ENTER_GL();
11321   func_glProgramUniform1d( program, location, v0 );
11322   LEAVE_GL();
11323 }
11324
11325 static void WINAPI wine_glProgramUniform1dEXT( GLuint program, GLint location, GLdouble x ) {
11326   void (*func_glProgramUniform1dEXT)( GLuint, GLint, GLdouble ) = extension_funcs[EXT_glProgramUniform1dEXT];
11327   TRACE("(%d, %d, %f)\n", program, location, x );
11328   ENTER_GL();
11329   func_glProgramUniform1dEXT( program, location, x );
11330   LEAVE_GL();
11331 }
11332
11333 static void WINAPI wine_glProgramUniform1dv( GLuint program, GLint location, GLsizei count, GLdouble* value ) {
11334   void (*func_glProgramUniform1dv)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glProgramUniform1dv];
11335   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11336   ENTER_GL();
11337   func_glProgramUniform1dv( program, location, count, value );
11338   LEAVE_GL();
11339 }
11340
11341 static void WINAPI wine_glProgramUniform1dvEXT( GLuint program, GLint location, GLsizei count, GLdouble* value ) {
11342   void (*func_glProgramUniform1dvEXT)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glProgramUniform1dvEXT];
11343   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11344   ENTER_GL();
11345   func_glProgramUniform1dvEXT( program, location, count, value );
11346   LEAVE_GL();
11347 }
11348
11349 static void WINAPI wine_glProgramUniform1f( GLuint program, GLint location, GLfloat v0 ) {
11350   void (*func_glProgramUniform1f)( GLuint, GLint, GLfloat ) = extension_funcs[EXT_glProgramUniform1f];
11351   TRACE("(%d, %d, %f)\n", program, location, v0 );
11352   ENTER_GL();
11353   func_glProgramUniform1f( program, location, v0 );
11354   LEAVE_GL();
11355 }
11356
11357 static void WINAPI wine_glProgramUniform1fEXT( GLuint program, GLint location, GLfloat v0 ) {
11358   void (*func_glProgramUniform1fEXT)( GLuint, GLint, GLfloat ) = extension_funcs[EXT_glProgramUniform1fEXT];
11359   TRACE("(%d, %d, %f)\n", program, location, v0 );
11360   ENTER_GL();
11361   func_glProgramUniform1fEXT( program, location, v0 );
11362   LEAVE_GL();
11363 }
11364
11365 static void WINAPI wine_glProgramUniform1fv( GLuint program, GLint location, GLsizei count, GLfloat* value ) {
11366   void (*func_glProgramUniform1fv)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramUniform1fv];
11367   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11368   ENTER_GL();
11369   func_glProgramUniform1fv( program, location, count, value );
11370   LEAVE_GL();
11371 }
11372
11373 static void WINAPI wine_glProgramUniform1fvEXT( GLuint program, GLint location, GLsizei count, GLfloat* value ) {
11374   void (*func_glProgramUniform1fvEXT)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramUniform1fvEXT];
11375   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11376   ENTER_GL();
11377   func_glProgramUniform1fvEXT( program, location, count, value );
11378   LEAVE_GL();
11379 }
11380
11381 static void WINAPI wine_glProgramUniform1i( GLuint program, GLint location, GLint v0 ) {
11382   void (*func_glProgramUniform1i)( GLuint, GLint, GLint ) = extension_funcs[EXT_glProgramUniform1i];
11383   TRACE("(%d, %d, %d)\n", program, location, v0 );
11384   ENTER_GL();
11385   func_glProgramUniform1i( program, location, v0 );
11386   LEAVE_GL();
11387 }
11388
11389 static void WINAPI wine_glProgramUniform1i64NV( GLuint program, GLint location, INT64 x ) {
11390   void (*func_glProgramUniform1i64NV)( GLuint, GLint, INT64 ) = extension_funcs[EXT_glProgramUniform1i64NV];
11391   TRACE("(%d, %d, %s)\n", program, location, wine_dbgstr_longlong(x) );
11392   ENTER_GL();
11393   func_glProgramUniform1i64NV( program, location, x );
11394   LEAVE_GL();
11395 }
11396
11397 static void WINAPI wine_glProgramUniform1i64vNV( GLuint program, GLint location, GLsizei count, INT64* value ) {
11398   void (*func_glProgramUniform1i64vNV)( GLuint, GLint, GLsizei, INT64* ) = extension_funcs[EXT_glProgramUniform1i64vNV];
11399   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11400   ENTER_GL();
11401   func_glProgramUniform1i64vNV( program, location, count, value );
11402   LEAVE_GL();
11403 }
11404
11405 static void WINAPI wine_glProgramUniform1iEXT( GLuint program, GLint location, GLint v0 ) {
11406   void (*func_glProgramUniform1iEXT)( GLuint, GLint, GLint ) = extension_funcs[EXT_glProgramUniform1iEXT];
11407   TRACE("(%d, %d, %d)\n", program, location, v0 );
11408   ENTER_GL();
11409   func_glProgramUniform1iEXT( program, location, v0 );
11410   LEAVE_GL();
11411 }
11412
11413 static void WINAPI wine_glProgramUniform1iv( GLuint program, GLint location, GLsizei count, GLint* value ) {
11414   void (*func_glProgramUniform1iv)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramUniform1iv];
11415   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11416   ENTER_GL();
11417   func_glProgramUniform1iv( program, location, count, value );
11418   LEAVE_GL();
11419 }
11420
11421 static void WINAPI wine_glProgramUniform1ivEXT( GLuint program, GLint location, GLsizei count, GLint* value ) {
11422   void (*func_glProgramUniform1ivEXT)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramUniform1ivEXT];
11423   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11424   ENTER_GL();
11425   func_glProgramUniform1ivEXT( program, location, count, value );
11426   LEAVE_GL();
11427 }
11428
11429 static void WINAPI wine_glProgramUniform1ui( GLuint program, GLint location, GLuint v0 ) {
11430   void (*func_glProgramUniform1ui)( GLuint, GLint, GLuint ) = extension_funcs[EXT_glProgramUniform1ui];
11431   TRACE("(%d, %d, %d)\n", program, location, v0 );
11432   ENTER_GL();
11433   func_glProgramUniform1ui( program, location, v0 );
11434   LEAVE_GL();
11435 }
11436
11437 static void WINAPI wine_glProgramUniform1ui64NV( GLuint program, GLint location, UINT64 x ) {
11438   void (*func_glProgramUniform1ui64NV)( GLuint, GLint, UINT64 ) = extension_funcs[EXT_glProgramUniform1ui64NV];
11439   TRACE("(%d, %d, %s)\n", program, location, wine_dbgstr_longlong(x) );
11440   ENTER_GL();
11441   func_glProgramUniform1ui64NV( program, location, x );
11442   LEAVE_GL();
11443 }
11444
11445 static void WINAPI wine_glProgramUniform1ui64vNV( GLuint program, GLint location, GLsizei count, UINT64* value ) {
11446   void (*func_glProgramUniform1ui64vNV)( GLuint, GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glProgramUniform1ui64vNV];
11447   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11448   ENTER_GL();
11449   func_glProgramUniform1ui64vNV( program, location, count, value );
11450   LEAVE_GL();
11451 }
11452
11453 static void WINAPI wine_glProgramUniform1uiEXT( GLuint program, GLint location, GLuint v0 ) {
11454   void (*func_glProgramUniform1uiEXT)( GLuint, GLint, GLuint ) = extension_funcs[EXT_glProgramUniform1uiEXT];
11455   TRACE("(%d, %d, %d)\n", program, location, v0 );
11456   ENTER_GL();
11457   func_glProgramUniform1uiEXT( program, location, v0 );
11458   LEAVE_GL();
11459 }
11460
11461 static void WINAPI wine_glProgramUniform1uiv( GLuint program, GLint location, GLsizei count, GLuint* value ) {
11462   void (*func_glProgramUniform1uiv)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramUniform1uiv];
11463   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11464   ENTER_GL();
11465   func_glProgramUniform1uiv( program, location, count, value );
11466   LEAVE_GL();
11467 }
11468
11469 static void WINAPI wine_glProgramUniform1uivEXT( GLuint program, GLint location, GLsizei count, GLuint* value ) {
11470   void (*func_glProgramUniform1uivEXT)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramUniform1uivEXT];
11471   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11472   ENTER_GL();
11473   func_glProgramUniform1uivEXT( program, location, count, value );
11474   LEAVE_GL();
11475 }
11476
11477 static void WINAPI wine_glProgramUniform2d( GLuint program, GLint location, GLdouble v0, GLdouble v1 ) {
11478   void (*func_glProgramUniform2d)( GLuint, GLint, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramUniform2d];
11479   TRACE("(%d, %d, %f, %f)\n", program, location, v0, v1 );
11480   ENTER_GL();
11481   func_glProgramUniform2d( program, location, v0, v1 );
11482   LEAVE_GL();
11483 }
11484
11485 static void WINAPI wine_glProgramUniform2dEXT( GLuint program, GLint location, GLdouble x, GLdouble y ) {
11486   void (*func_glProgramUniform2dEXT)( GLuint, GLint, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramUniform2dEXT];
11487   TRACE("(%d, %d, %f, %f)\n", program, location, x, y );
11488   ENTER_GL();
11489   func_glProgramUniform2dEXT( program, location, x, y );
11490   LEAVE_GL();
11491 }
11492
11493 static void WINAPI wine_glProgramUniform2dv( GLuint program, GLint location, GLsizei count, GLdouble* value ) {
11494   void (*func_glProgramUniform2dv)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glProgramUniform2dv];
11495   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11496   ENTER_GL();
11497   func_glProgramUniform2dv( program, location, count, value );
11498   LEAVE_GL();
11499 }
11500
11501 static void WINAPI wine_glProgramUniform2dvEXT( GLuint program, GLint location, GLsizei count, GLdouble* value ) {
11502   void (*func_glProgramUniform2dvEXT)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glProgramUniform2dvEXT];
11503   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11504   ENTER_GL();
11505   func_glProgramUniform2dvEXT( program, location, count, value );
11506   LEAVE_GL();
11507 }
11508
11509 static void WINAPI wine_glProgramUniform2f( GLuint program, GLint location, GLfloat v0, GLfloat v1 ) {
11510   void (*func_glProgramUniform2f)( GLuint, GLint, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramUniform2f];
11511   TRACE("(%d, %d, %f, %f)\n", program, location, v0, v1 );
11512   ENTER_GL();
11513   func_glProgramUniform2f( program, location, v0, v1 );
11514   LEAVE_GL();
11515 }
11516
11517 static void WINAPI wine_glProgramUniform2fEXT( GLuint program, GLint location, GLfloat v0, GLfloat v1 ) {
11518   void (*func_glProgramUniform2fEXT)( GLuint, GLint, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramUniform2fEXT];
11519   TRACE("(%d, %d, %f, %f)\n", program, location, v0, v1 );
11520   ENTER_GL();
11521   func_glProgramUniform2fEXT( program, location, v0, v1 );
11522   LEAVE_GL();
11523 }
11524
11525 static void WINAPI wine_glProgramUniform2fv( GLuint program, GLint location, GLsizei count, GLfloat* value ) {
11526   void (*func_glProgramUniform2fv)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramUniform2fv];
11527   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11528   ENTER_GL();
11529   func_glProgramUniform2fv( program, location, count, value );
11530   LEAVE_GL();
11531 }
11532
11533 static void WINAPI wine_glProgramUniform2fvEXT( GLuint program, GLint location, GLsizei count, GLfloat* value ) {
11534   void (*func_glProgramUniform2fvEXT)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramUniform2fvEXT];
11535   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11536   ENTER_GL();
11537   func_glProgramUniform2fvEXT( program, location, count, value );
11538   LEAVE_GL();
11539 }
11540
11541 static void WINAPI wine_glProgramUniform2i( GLuint program, GLint location, GLint v0, GLint v1 ) {
11542   void (*func_glProgramUniform2i)( GLuint, GLint, GLint, GLint ) = extension_funcs[EXT_glProgramUniform2i];
11543   TRACE("(%d, %d, %d, %d)\n", program, location, v0, v1 );
11544   ENTER_GL();
11545   func_glProgramUniform2i( program, location, v0, v1 );
11546   LEAVE_GL();
11547 }
11548
11549 static void WINAPI wine_glProgramUniform2i64NV( GLuint program, GLint location, INT64 x, INT64 y ) {
11550   void (*func_glProgramUniform2i64NV)( GLuint, GLint, INT64, INT64 ) = extension_funcs[EXT_glProgramUniform2i64NV];
11551   TRACE("(%d, %d, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
11552   ENTER_GL();
11553   func_glProgramUniform2i64NV( program, location, x, y );
11554   LEAVE_GL();
11555 }
11556
11557 static void WINAPI wine_glProgramUniform2i64vNV( GLuint program, GLint location, GLsizei count, INT64* value ) {
11558   void (*func_glProgramUniform2i64vNV)( GLuint, GLint, GLsizei, INT64* ) = extension_funcs[EXT_glProgramUniform2i64vNV];
11559   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11560   ENTER_GL();
11561   func_glProgramUniform2i64vNV( program, location, count, value );
11562   LEAVE_GL();
11563 }
11564
11565 static void WINAPI wine_glProgramUniform2iEXT( GLuint program, GLint location, GLint v0, GLint v1 ) {
11566   void (*func_glProgramUniform2iEXT)( GLuint, GLint, GLint, GLint ) = extension_funcs[EXT_glProgramUniform2iEXT];
11567   TRACE("(%d, %d, %d, %d)\n", program, location, v0, v1 );
11568   ENTER_GL();
11569   func_glProgramUniform2iEXT( program, location, v0, v1 );
11570   LEAVE_GL();
11571 }
11572
11573 static void WINAPI wine_glProgramUniform2iv( GLuint program, GLint location, GLsizei count, GLint* value ) {
11574   void (*func_glProgramUniform2iv)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramUniform2iv];
11575   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11576   ENTER_GL();
11577   func_glProgramUniform2iv( program, location, count, value );
11578   LEAVE_GL();
11579 }
11580
11581 static void WINAPI wine_glProgramUniform2ivEXT( GLuint program, GLint location, GLsizei count, GLint* value ) {
11582   void (*func_glProgramUniform2ivEXT)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramUniform2ivEXT];
11583   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11584   ENTER_GL();
11585   func_glProgramUniform2ivEXT( program, location, count, value );
11586   LEAVE_GL();
11587 }
11588
11589 static void WINAPI wine_glProgramUniform2ui( GLuint program, GLint location, GLuint v0, GLuint v1 ) {
11590   void (*func_glProgramUniform2ui)( GLuint, GLint, GLuint, GLuint ) = extension_funcs[EXT_glProgramUniform2ui];
11591   TRACE("(%d, %d, %d, %d)\n", program, location, v0, v1 );
11592   ENTER_GL();
11593   func_glProgramUniform2ui( program, location, v0, v1 );
11594   LEAVE_GL();
11595 }
11596
11597 static void WINAPI wine_glProgramUniform2ui64NV( GLuint program, GLint location, UINT64 x, UINT64 y ) {
11598   void (*func_glProgramUniform2ui64NV)( GLuint, GLint, UINT64, UINT64 ) = extension_funcs[EXT_glProgramUniform2ui64NV];
11599   TRACE("(%d, %d, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
11600   ENTER_GL();
11601   func_glProgramUniform2ui64NV( program, location, x, y );
11602   LEAVE_GL();
11603 }
11604
11605 static void WINAPI wine_glProgramUniform2ui64vNV( GLuint program, GLint location, GLsizei count, UINT64* value ) {
11606   void (*func_glProgramUniform2ui64vNV)( GLuint, GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glProgramUniform2ui64vNV];
11607   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11608   ENTER_GL();
11609   func_glProgramUniform2ui64vNV( program, location, count, value );
11610   LEAVE_GL();
11611 }
11612
11613 static void WINAPI wine_glProgramUniform2uiEXT( GLuint program, GLint location, GLuint v0, GLuint v1 ) {
11614   void (*func_glProgramUniform2uiEXT)( GLuint, GLint, GLuint, GLuint ) = extension_funcs[EXT_glProgramUniform2uiEXT];
11615   TRACE("(%d, %d, %d, %d)\n", program, location, v0, v1 );
11616   ENTER_GL();
11617   func_glProgramUniform2uiEXT( program, location, v0, v1 );
11618   LEAVE_GL();
11619 }
11620
11621 static void WINAPI wine_glProgramUniform2uiv( GLuint program, GLint location, GLsizei count, GLuint* value ) {
11622   void (*func_glProgramUniform2uiv)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramUniform2uiv];
11623   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11624   ENTER_GL();
11625   func_glProgramUniform2uiv( program, location, count, value );
11626   LEAVE_GL();
11627 }
11628
11629 static void WINAPI wine_glProgramUniform2uivEXT( GLuint program, GLint location, GLsizei count, GLuint* value ) {
11630   void (*func_glProgramUniform2uivEXT)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramUniform2uivEXT];
11631   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11632   ENTER_GL();
11633   func_glProgramUniform2uivEXT( program, location, count, value );
11634   LEAVE_GL();
11635 }
11636
11637 static void WINAPI wine_glProgramUniform3d( GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2 ) {
11638   void (*func_glProgramUniform3d)( GLuint, GLint, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramUniform3d];
11639   TRACE("(%d, %d, %f, %f, %f)\n", program, location, v0, v1, v2 );
11640   ENTER_GL();
11641   func_glProgramUniform3d( program, location, v0, v1, v2 );
11642   LEAVE_GL();
11643 }
11644
11645 static void WINAPI wine_glProgramUniform3dEXT( GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z ) {
11646   void (*func_glProgramUniform3dEXT)( GLuint, GLint, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramUniform3dEXT];
11647   TRACE("(%d, %d, %f, %f, %f)\n", program, location, x, y, z );
11648   ENTER_GL();
11649   func_glProgramUniform3dEXT( program, location, x, y, z );
11650   LEAVE_GL();
11651 }
11652
11653 static void WINAPI wine_glProgramUniform3dv( GLuint program, GLint location, GLsizei count, GLdouble* value ) {
11654   void (*func_glProgramUniform3dv)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glProgramUniform3dv];
11655   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11656   ENTER_GL();
11657   func_glProgramUniform3dv( program, location, count, value );
11658   LEAVE_GL();
11659 }
11660
11661 static void WINAPI wine_glProgramUniform3dvEXT( GLuint program, GLint location, GLsizei count, GLdouble* value ) {
11662   void (*func_glProgramUniform3dvEXT)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glProgramUniform3dvEXT];
11663   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11664   ENTER_GL();
11665   func_glProgramUniform3dvEXT( program, location, count, value );
11666   LEAVE_GL();
11667 }
11668
11669 static void WINAPI wine_glProgramUniform3f( GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2 ) {
11670   void (*func_glProgramUniform3f)( GLuint, GLint, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramUniform3f];
11671   TRACE("(%d, %d, %f, %f, %f)\n", program, location, v0, v1, v2 );
11672   ENTER_GL();
11673   func_glProgramUniform3f( program, location, v0, v1, v2 );
11674   LEAVE_GL();
11675 }
11676
11677 static void WINAPI wine_glProgramUniform3fEXT( GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2 ) {
11678   void (*func_glProgramUniform3fEXT)( GLuint, GLint, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramUniform3fEXT];
11679   TRACE("(%d, %d, %f, %f, %f)\n", program, location, v0, v1, v2 );
11680   ENTER_GL();
11681   func_glProgramUniform3fEXT( program, location, v0, v1, v2 );
11682   LEAVE_GL();
11683 }
11684
11685 static void WINAPI wine_glProgramUniform3fv( GLuint program, GLint location, GLsizei count, GLfloat* value ) {
11686   void (*func_glProgramUniform3fv)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramUniform3fv];
11687   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11688   ENTER_GL();
11689   func_glProgramUniform3fv( program, location, count, value );
11690   LEAVE_GL();
11691 }
11692
11693 static void WINAPI wine_glProgramUniform3fvEXT( GLuint program, GLint location, GLsizei count, GLfloat* value ) {
11694   void (*func_glProgramUniform3fvEXT)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramUniform3fvEXT];
11695   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11696   ENTER_GL();
11697   func_glProgramUniform3fvEXT( program, location, count, value );
11698   LEAVE_GL();
11699 }
11700
11701 static void WINAPI wine_glProgramUniform3i( GLuint program, GLint location, GLint v0, GLint v1, GLint v2 ) {
11702   void (*func_glProgramUniform3i)( GLuint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glProgramUniform3i];
11703   TRACE("(%d, %d, %d, %d, %d)\n", program, location, v0, v1, v2 );
11704   ENTER_GL();
11705   func_glProgramUniform3i( program, location, v0, v1, v2 );
11706   LEAVE_GL();
11707 }
11708
11709 static void WINAPI wine_glProgramUniform3i64NV( GLuint program, GLint location, INT64 x, INT64 y, INT64 z ) {
11710   void (*func_glProgramUniform3i64NV)( GLuint, GLint, INT64, INT64, INT64 ) = extension_funcs[EXT_glProgramUniform3i64NV];
11711   TRACE("(%d, %d, %s, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
11712   ENTER_GL();
11713   func_glProgramUniform3i64NV( program, location, x, y, z );
11714   LEAVE_GL();
11715 }
11716
11717 static void WINAPI wine_glProgramUniform3i64vNV( GLuint program, GLint location, GLsizei count, INT64* value ) {
11718   void (*func_glProgramUniform3i64vNV)( GLuint, GLint, GLsizei, INT64* ) = extension_funcs[EXT_glProgramUniform3i64vNV];
11719   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11720   ENTER_GL();
11721   func_glProgramUniform3i64vNV( program, location, count, value );
11722   LEAVE_GL();
11723 }
11724
11725 static void WINAPI wine_glProgramUniform3iEXT( GLuint program, GLint location, GLint v0, GLint v1, GLint v2 ) {
11726   void (*func_glProgramUniform3iEXT)( GLuint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glProgramUniform3iEXT];
11727   TRACE("(%d, %d, %d, %d, %d)\n", program, location, v0, v1, v2 );
11728   ENTER_GL();
11729   func_glProgramUniform3iEXT( program, location, v0, v1, v2 );
11730   LEAVE_GL();
11731 }
11732
11733 static void WINAPI wine_glProgramUniform3iv( GLuint program, GLint location, GLsizei count, GLint* value ) {
11734   void (*func_glProgramUniform3iv)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramUniform3iv];
11735   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11736   ENTER_GL();
11737   func_glProgramUniform3iv( program, location, count, value );
11738   LEAVE_GL();
11739 }
11740
11741 static void WINAPI wine_glProgramUniform3ivEXT( GLuint program, GLint location, GLsizei count, GLint* value ) {
11742   void (*func_glProgramUniform3ivEXT)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramUniform3ivEXT];
11743   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11744   ENTER_GL();
11745   func_glProgramUniform3ivEXT( program, location, count, value );
11746   LEAVE_GL();
11747 }
11748
11749 static void WINAPI wine_glProgramUniform3ui( GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2 ) {
11750   void (*func_glProgramUniform3ui)( GLuint, GLint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glProgramUniform3ui];
11751   TRACE("(%d, %d, %d, %d, %d)\n", program, location, v0, v1, v2 );
11752   ENTER_GL();
11753   func_glProgramUniform3ui( program, location, v0, v1, v2 );
11754   LEAVE_GL();
11755 }
11756
11757 static void WINAPI wine_glProgramUniform3ui64NV( GLuint program, GLint location, UINT64 x, UINT64 y, UINT64 z ) {
11758   void (*func_glProgramUniform3ui64NV)( GLuint, GLint, UINT64, UINT64, UINT64 ) = extension_funcs[EXT_glProgramUniform3ui64NV];
11759   TRACE("(%d, %d, %s, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
11760   ENTER_GL();
11761   func_glProgramUniform3ui64NV( program, location, x, y, z );
11762   LEAVE_GL();
11763 }
11764
11765 static void WINAPI wine_glProgramUniform3ui64vNV( GLuint program, GLint location, GLsizei count, UINT64* value ) {
11766   void (*func_glProgramUniform3ui64vNV)( GLuint, GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glProgramUniform3ui64vNV];
11767   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11768   ENTER_GL();
11769   func_glProgramUniform3ui64vNV( program, location, count, value );
11770   LEAVE_GL();
11771 }
11772
11773 static void WINAPI wine_glProgramUniform3uiEXT( GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2 ) {
11774   void (*func_glProgramUniform3uiEXT)( GLuint, GLint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glProgramUniform3uiEXT];
11775   TRACE("(%d, %d, %d, %d, %d)\n", program, location, v0, v1, v2 );
11776   ENTER_GL();
11777   func_glProgramUniform3uiEXT( program, location, v0, v1, v2 );
11778   LEAVE_GL();
11779 }
11780
11781 static void WINAPI wine_glProgramUniform3uiv( GLuint program, GLint location, GLsizei count, GLuint* value ) {
11782   void (*func_glProgramUniform3uiv)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramUniform3uiv];
11783   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11784   ENTER_GL();
11785   func_glProgramUniform3uiv( program, location, count, value );
11786   LEAVE_GL();
11787 }
11788
11789 static void WINAPI wine_glProgramUniform3uivEXT( GLuint program, GLint location, GLsizei count, GLuint* value ) {
11790   void (*func_glProgramUniform3uivEXT)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramUniform3uivEXT];
11791   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11792   ENTER_GL();
11793   func_glProgramUniform3uivEXT( program, location, count, value );
11794   LEAVE_GL();
11795 }
11796
11797 static void WINAPI wine_glProgramUniform4d( GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3 ) {
11798   void (*func_glProgramUniform4d)( GLuint, GLint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramUniform4d];
11799   TRACE("(%d, %d, %f, %f, %f, %f)\n", program, location, v0, v1, v2, v3 );
11800   ENTER_GL();
11801   func_glProgramUniform4d( program, location, v0, v1, v2, v3 );
11802   LEAVE_GL();
11803 }
11804
11805 static void WINAPI wine_glProgramUniform4dEXT( GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11806   void (*func_glProgramUniform4dEXT)( GLuint, GLint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glProgramUniform4dEXT];
11807   TRACE("(%d, %d, %f, %f, %f, %f)\n", program, location, x, y, z, w );
11808   ENTER_GL();
11809   func_glProgramUniform4dEXT( program, location, x, y, z, w );
11810   LEAVE_GL();
11811 }
11812
11813 static void WINAPI wine_glProgramUniform4dv( GLuint program, GLint location, GLsizei count, GLdouble* value ) {
11814   void (*func_glProgramUniform4dv)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glProgramUniform4dv];
11815   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11816   ENTER_GL();
11817   func_glProgramUniform4dv( program, location, count, value );
11818   LEAVE_GL();
11819 }
11820
11821 static void WINAPI wine_glProgramUniform4dvEXT( GLuint program, GLint location, GLsizei count, GLdouble* value ) {
11822   void (*func_glProgramUniform4dvEXT)( GLuint, GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glProgramUniform4dvEXT];
11823   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11824   ENTER_GL();
11825   func_glProgramUniform4dvEXT( program, location, count, value );
11826   LEAVE_GL();
11827 }
11828
11829 static void WINAPI wine_glProgramUniform4f( GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3 ) {
11830   void (*func_glProgramUniform4f)( GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramUniform4f];
11831   TRACE("(%d, %d, %f, %f, %f, %f)\n", program, location, v0, v1, v2, v3 );
11832   ENTER_GL();
11833   func_glProgramUniform4f( program, location, v0, v1, v2, v3 );
11834   LEAVE_GL();
11835 }
11836
11837 static void WINAPI wine_glProgramUniform4fEXT( GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3 ) {
11838   void (*func_glProgramUniform4fEXT)( GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glProgramUniform4fEXT];
11839   TRACE("(%d, %d, %f, %f, %f, %f)\n", program, location, v0, v1, v2, v3 );
11840   ENTER_GL();
11841   func_glProgramUniform4fEXT( program, location, v0, v1, v2, v3 );
11842   LEAVE_GL();
11843 }
11844
11845 static void WINAPI wine_glProgramUniform4fv( GLuint program, GLint location, GLsizei count, GLfloat* value ) {
11846   void (*func_glProgramUniform4fv)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramUniform4fv];
11847   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11848   ENTER_GL();
11849   func_glProgramUniform4fv( program, location, count, value );
11850   LEAVE_GL();
11851 }
11852
11853 static void WINAPI wine_glProgramUniform4fvEXT( GLuint program, GLint location, GLsizei count, GLfloat* value ) {
11854   void (*func_glProgramUniform4fvEXT)( GLuint, GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glProgramUniform4fvEXT];
11855   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11856   ENTER_GL();
11857   func_glProgramUniform4fvEXT( program, location, count, value );
11858   LEAVE_GL();
11859 }
11860
11861 static void WINAPI wine_glProgramUniform4i( GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3 ) {
11862   void (*func_glProgramUniform4i)( GLuint, GLint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glProgramUniform4i];
11863   TRACE("(%d, %d, %d, %d, %d, %d)\n", program, location, v0, v1, v2, v3 );
11864   ENTER_GL();
11865   func_glProgramUniform4i( program, location, v0, v1, v2, v3 );
11866   LEAVE_GL();
11867 }
11868
11869 static void WINAPI wine_glProgramUniform4i64NV( GLuint program, GLint location, INT64 x, INT64 y, INT64 z, INT64 w ) {
11870   void (*func_glProgramUniform4i64NV)( GLuint, GLint, INT64, INT64, INT64, INT64 ) = extension_funcs[EXT_glProgramUniform4i64NV];
11871   TRACE("(%d, %d, %s, %s, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
11872   ENTER_GL();
11873   func_glProgramUniform4i64NV( program, location, x, y, z, w );
11874   LEAVE_GL();
11875 }
11876
11877 static void WINAPI wine_glProgramUniform4i64vNV( GLuint program, GLint location, GLsizei count, INT64* value ) {
11878   void (*func_glProgramUniform4i64vNV)( GLuint, GLint, GLsizei, INT64* ) = extension_funcs[EXT_glProgramUniform4i64vNV];
11879   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11880   ENTER_GL();
11881   func_glProgramUniform4i64vNV( program, location, count, value );
11882   LEAVE_GL();
11883 }
11884
11885 static void WINAPI wine_glProgramUniform4iEXT( GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3 ) {
11886   void (*func_glProgramUniform4iEXT)( GLuint, GLint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glProgramUniform4iEXT];
11887   TRACE("(%d, %d, %d, %d, %d, %d)\n", program, location, v0, v1, v2, v3 );
11888   ENTER_GL();
11889   func_glProgramUniform4iEXT( program, location, v0, v1, v2, v3 );
11890   LEAVE_GL();
11891 }
11892
11893 static void WINAPI wine_glProgramUniform4iv( GLuint program, GLint location, GLsizei count, GLint* value ) {
11894   void (*func_glProgramUniform4iv)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramUniform4iv];
11895   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11896   ENTER_GL();
11897   func_glProgramUniform4iv( program, location, count, value );
11898   LEAVE_GL();
11899 }
11900
11901 static void WINAPI wine_glProgramUniform4ivEXT( GLuint program, GLint location, GLsizei count, GLint* value ) {
11902   void (*func_glProgramUniform4ivEXT)( GLuint, GLint, GLsizei, GLint* ) = extension_funcs[EXT_glProgramUniform4ivEXT];
11903   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11904   ENTER_GL();
11905   func_glProgramUniform4ivEXT( program, location, count, value );
11906   LEAVE_GL();
11907 }
11908
11909 static void WINAPI wine_glProgramUniform4ui( GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) {
11910   void (*func_glProgramUniform4ui)( GLuint, GLint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glProgramUniform4ui];
11911   TRACE("(%d, %d, %d, %d, %d, %d)\n", program, location, v0, v1, v2, v3 );
11912   ENTER_GL();
11913   func_glProgramUniform4ui( program, location, v0, v1, v2, v3 );
11914   LEAVE_GL();
11915 }
11916
11917 static void WINAPI wine_glProgramUniform4ui64NV( GLuint program, GLint location, UINT64 x, UINT64 y, UINT64 z, UINT64 w ) {
11918   void (*func_glProgramUniform4ui64NV)( GLuint, GLint, UINT64, UINT64, UINT64, UINT64 ) = extension_funcs[EXT_glProgramUniform4ui64NV];
11919   TRACE("(%d, %d, %s, %s, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
11920   ENTER_GL();
11921   func_glProgramUniform4ui64NV( program, location, x, y, z, w );
11922   LEAVE_GL();
11923 }
11924
11925 static void WINAPI wine_glProgramUniform4ui64vNV( GLuint program, GLint location, GLsizei count, UINT64* value ) {
11926   void (*func_glProgramUniform4ui64vNV)( GLuint, GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glProgramUniform4ui64vNV];
11927   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11928   ENTER_GL();
11929   func_glProgramUniform4ui64vNV( program, location, count, value );
11930   LEAVE_GL();
11931 }
11932
11933 static void WINAPI wine_glProgramUniform4uiEXT( GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) {
11934   void (*func_glProgramUniform4uiEXT)( GLuint, GLint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glProgramUniform4uiEXT];
11935   TRACE("(%d, %d, %d, %d, %d, %d)\n", program, location, v0, v1, v2, v3 );
11936   ENTER_GL();
11937   func_glProgramUniform4uiEXT( program, location, v0, v1, v2, v3 );
11938   LEAVE_GL();
11939 }
11940
11941 static void WINAPI wine_glProgramUniform4uiv( GLuint program, GLint location, GLsizei count, GLuint* value ) {
11942   void (*func_glProgramUniform4uiv)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramUniform4uiv];
11943   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11944   ENTER_GL();
11945   func_glProgramUniform4uiv( program, location, count, value );
11946   LEAVE_GL();
11947 }
11948
11949 static void WINAPI wine_glProgramUniform4uivEXT( GLuint program, GLint location, GLsizei count, GLuint* value ) {
11950   void (*func_glProgramUniform4uivEXT)( GLuint, GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glProgramUniform4uivEXT];
11951   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
11952   ENTER_GL();
11953   func_glProgramUniform4uivEXT( program, location, count, value );
11954   LEAVE_GL();
11955 }
11956
11957 static void WINAPI wine_glProgramUniformMatrix2dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
11958   void (*func_glProgramUniformMatrix2dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix2dv];
11959   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
11960   ENTER_GL();
11961   func_glProgramUniformMatrix2dv( program, location, count, transpose, value );
11962   LEAVE_GL();
11963 }
11964
11965 static void WINAPI wine_glProgramUniformMatrix2dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
11966   void (*func_glProgramUniformMatrix2dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix2dvEXT];
11967   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
11968   ENTER_GL();
11969   func_glProgramUniformMatrix2dvEXT( program, location, count, transpose, value );
11970   LEAVE_GL();
11971 }
11972
11973 static void WINAPI wine_glProgramUniformMatrix2fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
11974   void (*func_glProgramUniformMatrix2fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix2fv];
11975   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
11976   ENTER_GL();
11977   func_glProgramUniformMatrix2fv( program, location, count, transpose, value );
11978   LEAVE_GL();
11979 }
11980
11981 static void WINAPI wine_glProgramUniformMatrix2fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
11982   void (*func_glProgramUniformMatrix2fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix2fvEXT];
11983   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
11984   ENTER_GL();
11985   func_glProgramUniformMatrix2fvEXT( program, location, count, transpose, value );
11986   LEAVE_GL();
11987 }
11988
11989 static void WINAPI wine_glProgramUniformMatrix2x3dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
11990   void (*func_glProgramUniformMatrix2x3dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix2x3dv];
11991   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
11992   ENTER_GL();
11993   func_glProgramUniformMatrix2x3dv( program, location, count, transpose, value );
11994   LEAVE_GL();
11995 }
11996
11997 static void WINAPI wine_glProgramUniformMatrix2x3dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
11998   void (*func_glProgramUniformMatrix2x3dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix2x3dvEXT];
11999   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12000   ENTER_GL();
12001   func_glProgramUniformMatrix2x3dvEXT( program, location, count, transpose, value );
12002   LEAVE_GL();
12003 }
12004
12005 static void WINAPI wine_glProgramUniformMatrix2x3fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12006   void (*func_glProgramUniformMatrix2x3fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix2x3fv];
12007   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12008   ENTER_GL();
12009   func_glProgramUniformMatrix2x3fv( program, location, count, transpose, value );
12010   LEAVE_GL();
12011 }
12012
12013 static void WINAPI wine_glProgramUniformMatrix2x3fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12014   void (*func_glProgramUniformMatrix2x3fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix2x3fvEXT];
12015   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12016   ENTER_GL();
12017   func_glProgramUniformMatrix2x3fvEXT( program, location, count, transpose, value );
12018   LEAVE_GL();
12019 }
12020
12021 static void WINAPI wine_glProgramUniformMatrix2x4dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12022   void (*func_glProgramUniformMatrix2x4dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix2x4dv];
12023   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12024   ENTER_GL();
12025   func_glProgramUniformMatrix2x4dv( program, location, count, transpose, value );
12026   LEAVE_GL();
12027 }
12028
12029 static void WINAPI wine_glProgramUniformMatrix2x4dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12030   void (*func_glProgramUniformMatrix2x4dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix2x4dvEXT];
12031   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12032   ENTER_GL();
12033   func_glProgramUniformMatrix2x4dvEXT( program, location, count, transpose, value );
12034   LEAVE_GL();
12035 }
12036
12037 static void WINAPI wine_glProgramUniformMatrix2x4fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12038   void (*func_glProgramUniformMatrix2x4fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix2x4fv];
12039   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12040   ENTER_GL();
12041   func_glProgramUniformMatrix2x4fv( program, location, count, transpose, value );
12042   LEAVE_GL();
12043 }
12044
12045 static void WINAPI wine_glProgramUniformMatrix2x4fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12046   void (*func_glProgramUniformMatrix2x4fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix2x4fvEXT];
12047   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12048   ENTER_GL();
12049   func_glProgramUniformMatrix2x4fvEXT( program, location, count, transpose, value );
12050   LEAVE_GL();
12051 }
12052
12053 static void WINAPI wine_glProgramUniformMatrix3dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12054   void (*func_glProgramUniformMatrix3dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix3dv];
12055   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12056   ENTER_GL();
12057   func_glProgramUniformMatrix3dv( program, location, count, transpose, value );
12058   LEAVE_GL();
12059 }
12060
12061 static void WINAPI wine_glProgramUniformMatrix3dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12062   void (*func_glProgramUniformMatrix3dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix3dvEXT];
12063   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12064   ENTER_GL();
12065   func_glProgramUniformMatrix3dvEXT( program, location, count, transpose, value );
12066   LEAVE_GL();
12067 }
12068
12069 static void WINAPI wine_glProgramUniformMatrix3fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12070   void (*func_glProgramUniformMatrix3fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix3fv];
12071   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12072   ENTER_GL();
12073   func_glProgramUniformMatrix3fv( program, location, count, transpose, value );
12074   LEAVE_GL();
12075 }
12076
12077 static void WINAPI wine_glProgramUniformMatrix3fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12078   void (*func_glProgramUniformMatrix3fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix3fvEXT];
12079   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12080   ENTER_GL();
12081   func_glProgramUniformMatrix3fvEXT( program, location, count, transpose, value );
12082   LEAVE_GL();
12083 }
12084
12085 static void WINAPI wine_glProgramUniformMatrix3x2dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12086   void (*func_glProgramUniformMatrix3x2dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix3x2dv];
12087   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12088   ENTER_GL();
12089   func_glProgramUniformMatrix3x2dv( program, location, count, transpose, value );
12090   LEAVE_GL();
12091 }
12092
12093 static void WINAPI wine_glProgramUniformMatrix3x2dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12094   void (*func_glProgramUniformMatrix3x2dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix3x2dvEXT];
12095   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12096   ENTER_GL();
12097   func_glProgramUniformMatrix3x2dvEXT( program, location, count, transpose, value );
12098   LEAVE_GL();
12099 }
12100
12101 static void WINAPI wine_glProgramUniformMatrix3x2fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12102   void (*func_glProgramUniformMatrix3x2fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix3x2fv];
12103   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12104   ENTER_GL();
12105   func_glProgramUniformMatrix3x2fv( program, location, count, transpose, value );
12106   LEAVE_GL();
12107 }
12108
12109 static void WINAPI wine_glProgramUniformMatrix3x2fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12110   void (*func_glProgramUniformMatrix3x2fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix3x2fvEXT];
12111   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12112   ENTER_GL();
12113   func_glProgramUniformMatrix3x2fvEXT( program, location, count, transpose, value );
12114   LEAVE_GL();
12115 }
12116
12117 static void WINAPI wine_glProgramUniformMatrix3x4dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12118   void (*func_glProgramUniformMatrix3x4dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix3x4dv];
12119   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12120   ENTER_GL();
12121   func_glProgramUniformMatrix3x4dv( program, location, count, transpose, value );
12122   LEAVE_GL();
12123 }
12124
12125 static void WINAPI wine_glProgramUniformMatrix3x4dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12126   void (*func_glProgramUniformMatrix3x4dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix3x4dvEXT];
12127   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12128   ENTER_GL();
12129   func_glProgramUniformMatrix3x4dvEXT( program, location, count, transpose, value );
12130   LEAVE_GL();
12131 }
12132
12133 static void WINAPI wine_glProgramUniformMatrix3x4fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12134   void (*func_glProgramUniformMatrix3x4fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix3x4fv];
12135   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12136   ENTER_GL();
12137   func_glProgramUniformMatrix3x4fv( program, location, count, transpose, value );
12138   LEAVE_GL();
12139 }
12140
12141 static void WINAPI wine_glProgramUniformMatrix3x4fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12142   void (*func_glProgramUniformMatrix3x4fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix3x4fvEXT];
12143   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12144   ENTER_GL();
12145   func_glProgramUniformMatrix3x4fvEXT( program, location, count, transpose, value );
12146   LEAVE_GL();
12147 }
12148
12149 static void WINAPI wine_glProgramUniformMatrix4dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12150   void (*func_glProgramUniformMatrix4dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix4dv];
12151   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12152   ENTER_GL();
12153   func_glProgramUniformMatrix4dv( program, location, count, transpose, value );
12154   LEAVE_GL();
12155 }
12156
12157 static void WINAPI wine_glProgramUniformMatrix4dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12158   void (*func_glProgramUniformMatrix4dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix4dvEXT];
12159   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12160   ENTER_GL();
12161   func_glProgramUniformMatrix4dvEXT( program, location, count, transpose, value );
12162   LEAVE_GL();
12163 }
12164
12165 static void WINAPI wine_glProgramUniformMatrix4fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12166   void (*func_glProgramUniformMatrix4fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix4fv];
12167   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12168   ENTER_GL();
12169   func_glProgramUniformMatrix4fv( program, location, count, transpose, value );
12170   LEAVE_GL();
12171 }
12172
12173 static void WINAPI wine_glProgramUniformMatrix4fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12174   void (*func_glProgramUniformMatrix4fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix4fvEXT];
12175   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12176   ENTER_GL();
12177   func_glProgramUniformMatrix4fvEXT( program, location, count, transpose, value );
12178   LEAVE_GL();
12179 }
12180
12181 static void WINAPI wine_glProgramUniformMatrix4x2dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12182   void (*func_glProgramUniformMatrix4x2dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix4x2dv];
12183   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12184   ENTER_GL();
12185   func_glProgramUniformMatrix4x2dv( program, location, count, transpose, value );
12186   LEAVE_GL();
12187 }
12188
12189 static void WINAPI wine_glProgramUniformMatrix4x2dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12190   void (*func_glProgramUniformMatrix4x2dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix4x2dvEXT];
12191   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12192   ENTER_GL();
12193   func_glProgramUniformMatrix4x2dvEXT( program, location, count, transpose, value );
12194   LEAVE_GL();
12195 }
12196
12197 static void WINAPI wine_glProgramUniformMatrix4x2fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12198   void (*func_glProgramUniformMatrix4x2fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix4x2fv];
12199   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12200   ENTER_GL();
12201   func_glProgramUniformMatrix4x2fv( program, location, count, transpose, value );
12202   LEAVE_GL();
12203 }
12204
12205 static void WINAPI wine_glProgramUniformMatrix4x2fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12206   void (*func_glProgramUniformMatrix4x2fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix4x2fvEXT];
12207   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12208   ENTER_GL();
12209   func_glProgramUniformMatrix4x2fvEXT( program, location, count, transpose, value );
12210   LEAVE_GL();
12211 }
12212
12213 static void WINAPI wine_glProgramUniformMatrix4x3dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12214   void (*func_glProgramUniformMatrix4x3dv)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix4x3dv];
12215   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12216   ENTER_GL();
12217   func_glProgramUniformMatrix4x3dv( program, location, count, transpose, value );
12218   LEAVE_GL();
12219 }
12220
12221 static void WINAPI wine_glProgramUniformMatrix4x3dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
12222   void (*func_glProgramUniformMatrix4x3dvEXT)( GLuint, GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glProgramUniformMatrix4x3dvEXT];
12223   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12224   ENTER_GL();
12225   func_glProgramUniformMatrix4x3dvEXT( program, location, count, transpose, value );
12226   LEAVE_GL();
12227 }
12228
12229 static void WINAPI wine_glProgramUniformMatrix4x3fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12230   void (*func_glProgramUniformMatrix4x3fv)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix4x3fv];
12231   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12232   ENTER_GL();
12233   func_glProgramUniformMatrix4x3fv( program, location, count, transpose, value );
12234   LEAVE_GL();
12235 }
12236
12237 static void WINAPI wine_glProgramUniformMatrix4x3fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
12238   void (*func_glProgramUniformMatrix4x3fvEXT)( GLuint, GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glProgramUniformMatrix4x3fvEXT];
12239   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
12240   ENTER_GL();
12241   func_glProgramUniformMatrix4x3fvEXT( program, location, count, transpose, value );
12242   LEAVE_GL();
12243 }
12244
12245 static void WINAPI wine_glProgramUniformui64NV( GLuint program, GLint location, UINT64 value ) {
12246   void (*func_glProgramUniformui64NV)( GLuint, GLint, UINT64 ) = extension_funcs[EXT_glProgramUniformui64NV];
12247   TRACE("(%d, %d, %s)\n", program, location, wine_dbgstr_longlong(value) );
12248   ENTER_GL();
12249   func_glProgramUniformui64NV( program, location, value );
12250   LEAVE_GL();
12251 }
12252
12253 static void WINAPI wine_glProgramUniformui64vNV( GLuint program, GLint location, GLsizei count, UINT64* value ) {
12254   void (*func_glProgramUniformui64vNV)( GLuint, GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glProgramUniformui64vNV];
12255   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
12256   ENTER_GL();
12257   func_glProgramUniformui64vNV( program, location, count, value );
12258   LEAVE_GL();
12259 }
12260
12261 static void WINAPI wine_glProgramVertexLimitNV( GLenum target, GLint limit ) {
12262   void (*func_glProgramVertexLimitNV)( GLenum, GLint ) = extension_funcs[EXT_glProgramVertexLimitNV];
12263   TRACE("(%d, %d)\n", target, limit );
12264   ENTER_GL();
12265   func_glProgramVertexLimitNV( target, limit );
12266   LEAVE_GL();
12267 }
12268
12269 static void WINAPI wine_glProvokingVertex( GLenum mode ) {
12270   void (*func_glProvokingVertex)( GLenum ) = extension_funcs[EXT_glProvokingVertex];
12271   TRACE("(%d)\n", mode );
12272   ENTER_GL();
12273   func_glProvokingVertex( mode );
12274   LEAVE_GL();
12275 }
12276
12277 static void WINAPI wine_glProvokingVertexEXT( GLenum mode ) {
12278   void (*func_glProvokingVertexEXT)( GLenum ) = extension_funcs[EXT_glProvokingVertexEXT];
12279   TRACE("(%d)\n", mode );
12280   ENTER_GL();
12281   func_glProvokingVertexEXT( mode );
12282   LEAVE_GL();
12283 }
12284
12285 static void WINAPI wine_glPushClientAttribDefaultEXT( GLbitfield mask ) {
12286   void (*func_glPushClientAttribDefaultEXT)( GLbitfield ) = extension_funcs[EXT_glPushClientAttribDefaultEXT];
12287   TRACE("(%d)\n", mask );
12288   ENTER_GL();
12289   func_glPushClientAttribDefaultEXT( mask );
12290   LEAVE_GL();
12291 }
12292
12293 static void WINAPI wine_glQueryCounter( GLuint id, GLenum target ) {
12294   void (*func_glQueryCounter)( GLuint, GLenum ) = extension_funcs[EXT_glQueryCounter];
12295   TRACE("(%d, %d)\n", id, target );
12296   ENTER_GL();
12297   func_glQueryCounter( id, target );
12298   LEAVE_GL();
12299 }
12300
12301 static void WINAPI wine_glReadBufferRegion( GLenum region, GLint x, GLint y, GLsizei width, GLsizei height ) {
12302   void (*func_glReadBufferRegion)( GLenum, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glReadBufferRegion];
12303   TRACE("(%d, %d, %d, %d, %d)\n", region, x, y, width, height );
12304   ENTER_GL();
12305   func_glReadBufferRegion( region, x, y, width, height );
12306   LEAVE_GL();
12307 }
12308
12309 static void WINAPI wine_glReadInstrumentsSGIX( GLint marker ) {
12310   void (*func_glReadInstrumentsSGIX)( GLint ) = extension_funcs[EXT_glReadInstrumentsSGIX];
12311   TRACE("(%d)\n", marker );
12312   ENTER_GL();
12313   func_glReadInstrumentsSGIX( marker );
12314   LEAVE_GL();
12315 }
12316
12317 static void WINAPI wine_glReadnPixelsARB( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid* data ) {
12318   void (*func_glReadnPixelsARB)( GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glReadnPixelsARB];
12319   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", x, y, width, height, format, type, bufSize, data );
12320   ENTER_GL();
12321   func_glReadnPixelsARB( x, y, width, height, format, type, bufSize, data );
12322   LEAVE_GL();
12323 }
12324
12325 static void WINAPI wine_glReferencePlaneSGIX( GLdouble* equation ) {
12326   void (*func_glReferencePlaneSGIX)( GLdouble* ) = extension_funcs[EXT_glReferencePlaneSGIX];
12327   TRACE("(%p)\n", equation );
12328   ENTER_GL();
12329   func_glReferencePlaneSGIX( equation );
12330   LEAVE_GL();
12331 }
12332
12333 static void WINAPI wine_glReleaseShaderCompiler( void ) {
12334   void (*func_glReleaseShaderCompiler)( void ) = extension_funcs[EXT_glReleaseShaderCompiler];
12335   TRACE("()\n");
12336   ENTER_GL();
12337   func_glReleaseShaderCompiler( );
12338   LEAVE_GL();
12339 }
12340
12341 static void WINAPI wine_glRenderbufferStorage( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) {
12342   void (*func_glRenderbufferStorage)( GLenum, GLenum, GLsizei, GLsizei ) = extension_funcs[EXT_glRenderbufferStorage];
12343   TRACE("(%d, %d, %d, %d)\n", target, internalformat, width, height );
12344   ENTER_GL();
12345   func_glRenderbufferStorage( target, internalformat, width, height );
12346   LEAVE_GL();
12347 }
12348
12349 static void WINAPI wine_glRenderbufferStorageEXT( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) {
12350   void (*func_glRenderbufferStorageEXT)( GLenum, GLenum, GLsizei, GLsizei ) = extension_funcs[EXT_glRenderbufferStorageEXT];
12351   TRACE("(%d, %d, %d, %d)\n", target, internalformat, width, height );
12352   ENTER_GL();
12353   func_glRenderbufferStorageEXT( target, internalformat, width, height );
12354   LEAVE_GL();
12355 }
12356
12357 static void WINAPI wine_glRenderbufferStorageMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) {
12358   void (*func_glRenderbufferStorageMultisample)( GLenum, GLsizei, GLenum, GLsizei, GLsizei ) = extension_funcs[EXT_glRenderbufferStorageMultisample];
12359   TRACE("(%d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height );
12360   ENTER_GL();
12361   func_glRenderbufferStorageMultisample( target, samples, internalformat, width, height );
12362   LEAVE_GL();
12363 }
12364
12365 static void WINAPI wine_glRenderbufferStorageMultisampleCoverageNV( GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height ) {
12366   void (*func_glRenderbufferStorageMultisampleCoverageNV)( GLenum, GLsizei, GLsizei, GLenum, GLsizei, GLsizei ) = extension_funcs[EXT_glRenderbufferStorageMultisampleCoverageNV];
12367   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, coverageSamples, colorSamples, internalformat, width, height );
12368   ENTER_GL();
12369   func_glRenderbufferStorageMultisampleCoverageNV( target, coverageSamples, colorSamples, internalformat, width, height );
12370   LEAVE_GL();
12371 }
12372
12373 static void WINAPI wine_glRenderbufferStorageMultisampleEXT( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) {
12374   void (*func_glRenderbufferStorageMultisampleEXT)( GLenum, GLsizei, GLenum, GLsizei, GLsizei ) = extension_funcs[EXT_glRenderbufferStorageMultisampleEXT];
12375   TRACE("(%d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height );
12376   ENTER_GL();
12377   func_glRenderbufferStorageMultisampleEXT( target, samples, internalformat, width, height );
12378   LEAVE_GL();
12379 }
12380
12381 static void WINAPI wine_glReplacementCodePointerSUN( GLenum type, GLsizei stride, GLvoid** pointer ) {
12382   void (*func_glReplacementCodePointerSUN)( GLenum, GLsizei, GLvoid** ) = extension_funcs[EXT_glReplacementCodePointerSUN];
12383   TRACE("(%d, %d, %p)\n", type, stride, pointer );
12384   ENTER_GL();
12385   func_glReplacementCodePointerSUN( type, stride, pointer );
12386   LEAVE_GL();
12387 }
12388
12389 static void WINAPI wine_glReplacementCodeubSUN( GLubyte code ) {
12390   void (*func_glReplacementCodeubSUN)( GLubyte ) = extension_funcs[EXT_glReplacementCodeubSUN];
12391   TRACE("(%d)\n", code );
12392   ENTER_GL();
12393   func_glReplacementCodeubSUN( code );
12394   LEAVE_GL();
12395 }
12396
12397 static void WINAPI wine_glReplacementCodeubvSUN( GLubyte* code ) {
12398   void (*func_glReplacementCodeubvSUN)( GLubyte* ) = extension_funcs[EXT_glReplacementCodeubvSUN];
12399   TRACE("(%p)\n", code );
12400   ENTER_GL();
12401   func_glReplacementCodeubvSUN( code );
12402   LEAVE_GL();
12403 }
12404
12405 static void WINAPI wine_glReplacementCodeuiColor3fVertex3fSUN( GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z ) {
12406   void (*func_glReplacementCodeuiColor3fVertex3fSUN)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glReplacementCodeuiColor3fVertex3fSUN];
12407   TRACE("(%d, %f, %f, %f, %f, %f, %f)\n", rc, r, g, b, x, y, z );
12408   ENTER_GL();
12409   func_glReplacementCodeuiColor3fVertex3fSUN( rc, r, g, b, x, y, z );
12410   LEAVE_GL();
12411 }
12412
12413 static void WINAPI wine_glReplacementCodeuiColor3fVertex3fvSUN( GLuint* rc, GLfloat* c, GLfloat* v ) {
12414   void (*func_glReplacementCodeuiColor3fVertex3fvSUN)( GLuint*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glReplacementCodeuiColor3fVertex3fvSUN];
12415   TRACE("(%p, %p, %p)\n", rc, c, v );
12416   ENTER_GL();
12417   func_glReplacementCodeuiColor3fVertex3fvSUN( rc, c, v );
12418   LEAVE_GL();
12419 }
12420
12421 static void WINAPI wine_glReplacementCodeuiColor4fNormal3fVertex3fSUN( GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
12422   void (*func_glReplacementCodeuiColor4fNormal3fVertex3fSUN)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glReplacementCodeuiColor4fNormal3fVertex3fSUN];
12423   TRACE("(%d, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f)\n", rc, r, g, b, a, nx, ny, nz, x, y, z );
12424   ENTER_GL();
12425   func_glReplacementCodeuiColor4fNormal3fVertex3fSUN( rc, r, g, b, a, nx, ny, nz, x, y, z );
12426   LEAVE_GL();
12427 }
12428
12429 static void WINAPI wine_glReplacementCodeuiColor4fNormal3fVertex3fvSUN( GLuint* rc, GLfloat* c, GLfloat* n, GLfloat* v ) {
12430   void (*func_glReplacementCodeuiColor4fNormal3fVertex3fvSUN)( GLuint*, GLfloat*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glReplacementCodeuiColor4fNormal3fVertex3fvSUN];
12431   TRACE("(%p, %p, %p, %p)\n", rc, c, n, v );
12432   ENTER_GL();
12433   func_glReplacementCodeuiColor4fNormal3fVertex3fvSUN( rc, c, n, v );
12434   LEAVE_GL();
12435 }
12436
12437 static void WINAPI wine_glReplacementCodeuiColor4ubVertex3fSUN( GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z ) {
12438   void (*func_glReplacementCodeuiColor4ubVertex3fSUN)( GLuint, GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glReplacementCodeuiColor4ubVertex3fSUN];
12439   TRACE("(%d, %d, %d, %d, %d, %f, %f, %f)\n", rc, r, g, b, a, x, y, z );
12440   ENTER_GL();
12441   func_glReplacementCodeuiColor4ubVertex3fSUN( rc, r, g, b, a, x, y, z );
12442   LEAVE_GL();
12443 }
12444
12445 static void WINAPI wine_glReplacementCodeuiColor4ubVertex3fvSUN( GLuint* rc, GLubyte* c, GLfloat* v ) {
12446   void (*func_glReplacementCodeuiColor4ubVertex3fvSUN)( GLuint*, GLubyte*, GLfloat* ) = extension_funcs[EXT_glReplacementCodeuiColor4ubVertex3fvSUN];
12447   TRACE("(%p, %p, %p)\n", rc, c, v );
12448   ENTER_GL();
12449   func_glReplacementCodeuiColor4ubVertex3fvSUN( rc, c, v );
12450   LEAVE_GL();
12451 }
12452
12453 static void WINAPI wine_glReplacementCodeuiNormal3fVertex3fSUN( GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
12454   void (*func_glReplacementCodeuiNormal3fVertex3fSUN)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glReplacementCodeuiNormal3fVertex3fSUN];
12455   TRACE("(%d, %f, %f, %f, %f, %f, %f)\n", rc, nx, ny, nz, x, y, z );
12456   ENTER_GL();
12457   func_glReplacementCodeuiNormal3fVertex3fSUN( rc, nx, ny, nz, x, y, z );
12458   LEAVE_GL();
12459 }
12460
12461 static void WINAPI wine_glReplacementCodeuiNormal3fVertex3fvSUN( GLuint* rc, GLfloat* n, GLfloat* v ) {
12462   void (*func_glReplacementCodeuiNormal3fVertex3fvSUN)( GLuint*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glReplacementCodeuiNormal3fVertex3fvSUN];
12463   TRACE("(%p, %p, %p)\n", rc, n, v );
12464   ENTER_GL();
12465   func_glReplacementCodeuiNormal3fVertex3fvSUN( rc, n, v );
12466   LEAVE_GL();
12467 }
12468
12469 static void WINAPI wine_glReplacementCodeuiSUN( GLuint code ) {
12470   void (*func_glReplacementCodeuiSUN)( GLuint ) = extension_funcs[EXT_glReplacementCodeuiSUN];
12471   TRACE("(%d)\n", code );
12472   ENTER_GL();
12473   func_glReplacementCodeuiSUN( code );
12474   LEAVE_GL();
12475 }
12476
12477 static void WINAPI wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN( GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
12478   void (*func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN];
12479   TRACE("(%d, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f)\n", rc, s, t, r, g, b, a, nx, ny, nz, x, y, z );
12480   ENTER_GL();
12481   func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN( rc, s, t, r, g, b, a, nx, ny, nz, x, y, z );
12482   LEAVE_GL();
12483 }
12484
12485 static void WINAPI wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN( GLuint* rc, GLfloat* tc, GLfloat* c, GLfloat* n, GLfloat* v ) {
12486   void (*func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN)( GLuint*, GLfloat*, GLfloat*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN];
12487   TRACE("(%p, %p, %p, %p, %p)\n", rc, tc, c, n, v );
12488   ENTER_GL();
12489   func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN( rc, tc, c, n, v );
12490   LEAVE_GL();
12491 }
12492
12493 static void WINAPI wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN( GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
12494   void (*func_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN];
12495   TRACE("(%d, %f, %f, %f, %f, %f, %f, %f, %f)\n", rc, s, t, nx, ny, nz, x, y, z );
12496   ENTER_GL();
12497   func_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN( rc, s, t, nx, ny, nz, x, y, z );
12498   LEAVE_GL();
12499 }
12500
12501 static void WINAPI wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN( GLuint* rc, GLfloat* tc, GLfloat* n, GLfloat* v ) {
12502   void (*func_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN)( GLuint*, GLfloat*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN];
12503   TRACE("(%p, %p, %p, %p)\n", rc, tc, n, v );
12504   ENTER_GL();
12505   func_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN( rc, tc, n, v );
12506   LEAVE_GL();
12507 }
12508
12509 static void WINAPI wine_glReplacementCodeuiTexCoord2fVertex3fSUN( GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z ) {
12510   void (*func_glReplacementCodeuiTexCoord2fVertex3fSUN)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glReplacementCodeuiTexCoord2fVertex3fSUN];
12511   TRACE("(%d, %f, %f, %f, %f, %f)\n", rc, s, t, x, y, z );
12512   ENTER_GL();
12513   func_glReplacementCodeuiTexCoord2fVertex3fSUN( rc, s, t, x, y, z );
12514   LEAVE_GL();
12515 }
12516
12517 static void WINAPI wine_glReplacementCodeuiTexCoord2fVertex3fvSUN( GLuint* rc, GLfloat* tc, GLfloat* v ) {
12518   void (*func_glReplacementCodeuiTexCoord2fVertex3fvSUN)( GLuint*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glReplacementCodeuiTexCoord2fVertex3fvSUN];
12519   TRACE("(%p, %p, %p)\n", rc, tc, v );
12520   ENTER_GL();
12521   func_glReplacementCodeuiTexCoord2fVertex3fvSUN( rc, tc, v );
12522   LEAVE_GL();
12523 }
12524
12525 static void WINAPI wine_glReplacementCodeuiVertex3fSUN( GLuint rc, GLfloat x, GLfloat y, GLfloat z ) {
12526   void (*func_glReplacementCodeuiVertex3fSUN)( GLuint, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glReplacementCodeuiVertex3fSUN];
12527   TRACE("(%d, %f, %f, %f)\n", rc, x, y, z );
12528   ENTER_GL();
12529   func_glReplacementCodeuiVertex3fSUN( rc, x, y, z );
12530   LEAVE_GL();
12531 }
12532
12533 static void WINAPI wine_glReplacementCodeuiVertex3fvSUN( GLuint* rc, GLfloat* v ) {
12534   void (*func_glReplacementCodeuiVertex3fvSUN)( GLuint*, GLfloat* ) = extension_funcs[EXT_glReplacementCodeuiVertex3fvSUN];
12535   TRACE("(%p, %p)\n", rc, v );
12536   ENTER_GL();
12537   func_glReplacementCodeuiVertex3fvSUN( rc, v );
12538   LEAVE_GL();
12539 }
12540
12541 static void WINAPI wine_glReplacementCodeuivSUN( GLuint* code ) {
12542   void (*func_glReplacementCodeuivSUN)( GLuint* ) = extension_funcs[EXT_glReplacementCodeuivSUN];
12543   TRACE("(%p)\n", code );
12544   ENTER_GL();
12545   func_glReplacementCodeuivSUN( code );
12546   LEAVE_GL();
12547 }
12548
12549 static void WINAPI wine_glReplacementCodeusSUN( GLushort code ) {
12550   void (*func_glReplacementCodeusSUN)( GLushort ) = extension_funcs[EXT_glReplacementCodeusSUN];
12551   TRACE("(%d)\n", code );
12552   ENTER_GL();
12553   func_glReplacementCodeusSUN( code );
12554   LEAVE_GL();
12555 }
12556
12557 static void WINAPI wine_glReplacementCodeusvSUN( GLushort* code ) {
12558   void (*func_glReplacementCodeusvSUN)( GLushort* ) = extension_funcs[EXT_glReplacementCodeusvSUN];
12559   TRACE("(%p)\n", code );
12560   ENTER_GL();
12561   func_glReplacementCodeusvSUN( code );
12562   LEAVE_GL();
12563 }
12564
12565 static void WINAPI wine_glRequestResidentProgramsNV( GLsizei n, GLuint* programs ) {
12566   void (*func_glRequestResidentProgramsNV)( GLsizei, GLuint* ) = extension_funcs[EXT_glRequestResidentProgramsNV];
12567   TRACE("(%d, %p)\n", n, programs );
12568   ENTER_GL();
12569   func_glRequestResidentProgramsNV( n, programs );
12570   LEAVE_GL();
12571 }
12572
12573 static void WINAPI wine_glResetHistogram( GLenum target ) {
12574   void (*func_glResetHistogram)( GLenum ) = extension_funcs[EXT_glResetHistogram];
12575   TRACE("(%d)\n", target );
12576   ENTER_GL();
12577   func_glResetHistogram( target );
12578   LEAVE_GL();
12579 }
12580
12581 static void WINAPI wine_glResetHistogramEXT( GLenum target ) {
12582   void (*func_glResetHistogramEXT)( GLenum ) = extension_funcs[EXT_glResetHistogramEXT];
12583   TRACE("(%d)\n", target );
12584   ENTER_GL();
12585   func_glResetHistogramEXT( target );
12586   LEAVE_GL();
12587 }
12588
12589 static void WINAPI wine_glResetMinmax( GLenum target ) {
12590   void (*func_glResetMinmax)( GLenum ) = extension_funcs[EXT_glResetMinmax];
12591   TRACE("(%d)\n", target );
12592   ENTER_GL();
12593   func_glResetMinmax( target );
12594   LEAVE_GL();
12595 }
12596
12597 static void WINAPI wine_glResetMinmaxEXT( GLenum target ) {
12598   void (*func_glResetMinmaxEXT)( GLenum ) = extension_funcs[EXT_glResetMinmaxEXT];
12599   TRACE("(%d)\n", target );
12600   ENTER_GL();
12601   func_glResetMinmaxEXT( target );
12602   LEAVE_GL();
12603 }
12604
12605 static void WINAPI wine_glResizeBuffersMESA( void ) {
12606   void (*func_glResizeBuffersMESA)( void ) = extension_funcs[EXT_glResizeBuffersMESA];
12607   TRACE("()\n");
12608   ENTER_GL();
12609   func_glResizeBuffersMESA( );
12610   LEAVE_GL();
12611 }
12612
12613 static void WINAPI wine_glResumeTransformFeedback( void ) {
12614   void (*func_glResumeTransformFeedback)( void ) = extension_funcs[EXT_glResumeTransformFeedback];
12615   TRACE("()\n");
12616   ENTER_GL();
12617   func_glResumeTransformFeedback( );
12618   LEAVE_GL();
12619 }
12620
12621 static void WINAPI wine_glResumeTransformFeedbackNV( void ) {
12622   void (*func_glResumeTransformFeedbackNV)( void ) = extension_funcs[EXT_glResumeTransformFeedbackNV];
12623   TRACE("()\n");
12624   ENTER_GL();
12625   func_glResumeTransformFeedbackNV( );
12626   LEAVE_GL();
12627 }
12628
12629 static void WINAPI wine_glSampleCoverage( GLclampf value, GLboolean invert ) {
12630   void (*func_glSampleCoverage)( GLclampf, GLboolean ) = extension_funcs[EXT_glSampleCoverage];
12631   TRACE("(%f, %d)\n", value, invert );
12632   ENTER_GL();
12633   func_glSampleCoverage( value, invert );
12634   LEAVE_GL();
12635 }
12636
12637 static void WINAPI wine_glSampleCoverageARB( GLclampf value, GLboolean invert ) {
12638   void (*func_glSampleCoverageARB)( GLclampf, GLboolean ) = extension_funcs[EXT_glSampleCoverageARB];
12639   TRACE("(%f, %d)\n", value, invert );
12640   ENTER_GL();
12641   func_glSampleCoverageARB( value, invert );
12642   LEAVE_GL();
12643 }
12644
12645 static void WINAPI wine_glSampleMapATI( GLuint dst, GLuint interp, GLenum swizzle ) {
12646   void (*func_glSampleMapATI)( GLuint, GLuint, GLenum ) = extension_funcs[EXT_glSampleMapATI];
12647   TRACE("(%d, %d, %d)\n", dst, interp, swizzle );
12648   ENTER_GL();
12649   func_glSampleMapATI( dst, interp, swizzle );
12650   LEAVE_GL();
12651 }
12652
12653 static void WINAPI wine_glSampleMaskEXT( GLclampf value, GLboolean invert ) {
12654   void (*func_glSampleMaskEXT)( GLclampf, GLboolean ) = extension_funcs[EXT_glSampleMaskEXT];
12655   TRACE("(%f, %d)\n", value, invert );
12656   ENTER_GL();
12657   func_glSampleMaskEXT( value, invert );
12658   LEAVE_GL();
12659 }
12660
12661 static void WINAPI wine_glSampleMaskIndexedNV( GLuint index, GLbitfield mask ) {
12662   void (*func_glSampleMaskIndexedNV)( GLuint, GLbitfield ) = extension_funcs[EXT_glSampleMaskIndexedNV];
12663   TRACE("(%d, %d)\n", index, mask );
12664   ENTER_GL();
12665   func_glSampleMaskIndexedNV( index, mask );
12666   LEAVE_GL();
12667 }
12668
12669 static void WINAPI wine_glSampleMaskSGIS( GLclampf value, GLboolean invert ) {
12670   void (*func_glSampleMaskSGIS)( GLclampf, GLboolean ) = extension_funcs[EXT_glSampleMaskSGIS];
12671   TRACE("(%f, %d)\n", value, invert );
12672   ENTER_GL();
12673   func_glSampleMaskSGIS( value, invert );
12674   LEAVE_GL();
12675 }
12676
12677 static void WINAPI wine_glSampleMaski( GLuint index, GLbitfield mask ) {
12678   void (*func_glSampleMaski)( GLuint, GLbitfield ) = extension_funcs[EXT_glSampleMaski];
12679   TRACE("(%d, %d)\n", index, mask );
12680   ENTER_GL();
12681   func_glSampleMaski( index, mask );
12682   LEAVE_GL();
12683 }
12684
12685 static void WINAPI wine_glSamplePatternEXT( GLenum pattern ) {
12686   void (*func_glSamplePatternEXT)( GLenum ) = extension_funcs[EXT_glSamplePatternEXT];
12687   TRACE("(%d)\n", pattern );
12688   ENTER_GL();
12689   func_glSamplePatternEXT( pattern );
12690   LEAVE_GL();
12691 }
12692
12693 static void WINAPI wine_glSamplePatternSGIS( GLenum pattern ) {
12694   void (*func_glSamplePatternSGIS)( GLenum ) = extension_funcs[EXT_glSamplePatternSGIS];
12695   TRACE("(%d)\n", pattern );
12696   ENTER_GL();
12697   func_glSamplePatternSGIS( pattern );
12698   LEAVE_GL();
12699 }
12700
12701 static void WINAPI wine_glSamplerParameterIiv( GLuint sampler, GLenum pname, GLint* param ) {
12702   void (*func_glSamplerParameterIiv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glSamplerParameterIiv];
12703   TRACE("(%d, %d, %p)\n", sampler, pname, param );
12704   ENTER_GL();
12705   func_glSamplerParameterIiv( sampler, pname, param );
12706   LEAVE_GL();
12707 }
12708
12709 static void WINAPI wine_glSamplerParameterIuiv( GLuint sampler, GLenum pname, GLuint* param ) {
12710   void (*func_glSamplerParameterIuiv)( GLuint, GLenum, GLuint* ) = extension_funcs[EXT_glSamplerParameterIuiv];
12711   TRACE("(%d, %d, %p)\n", sampler, pname, param );
12712   ENTER_GL();
12713   func_glSamplerParameterIuiv( sampler, pname, param );
12714   LEAVE_GL();
12715 }
12716
12717 static void WINAPI wine_glSamplerParameterf( GLuint sampler, GLenum pname, GLfloat param ) {
12718   void (*func_glSamplerParameterf)( GLuint, GLenum, GLfloat ) = extension_funcs[EXT_glSamplerParameterf];
12719   TRACE("(%d, %d, %f)\n", sampler, pname, param );
12720   ENTER_GL();
12721   func_glSamplerParameterf( sampler, pname, param );
12722   LEAVE_GL();
12723 }
12724
12725 static void WINAPI wine_glSamplerParameterfv( GLuint sampler, GLenum pname, GLfloat* param ) {
12726   void (*func_glSamplerParameterfv)( GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glSamplerParameterfv];
12727   TRACE("(%d, %d, %p)\n", sampler, pname, param );
12728   ENTER_GL();
12729   func_glSamplerParameterfv( sampler, pname, param );
12730   LEAVE_GL();
12731 }
12732
12733 static void WINAPI wine_glSamplerParameteri( GLuint sampler, GLenum pname, GLint param ) {
12734   void (*func_glSamplerParameteri)( GLuint, GLenum, GLint ) = extension_funcs[EXT_glSamplerParameteri];
12735   TRACE("(%d, %d, %d)\n", sampler, pname, param );
12736   ENTER_GL();
12737   func_glSamplerParameteri( sampler, pname, param );
12738   LEAVE_GL();
12739 }
12740
12741 static void WINAPI wine_glSamplerParameteriv( GLuint sampler, GLenum pname, GLint* param ) {
12742   void (*func_glSamplerParameteriv)( GLuint, GLenum, GLint* ) = extension_funcs[EXT_glSamplerParameteriv];
12743   TRACE("(%d, %d, %p)\n", sampler, pname, param );
12744   ENTER_GL();
12745   func_glSamplerParameteriv( sampler, pname, param );
12746   LEAVE_GL();
12747 }
12748
12749 static void WINAPI wine_glScissorArrayv( GLuint first, GLsizei count, GLint* v ) {
12750   void (*func_glScissorArrayv)( GLuint, GLsizei, GLint* ) = extension_funcs[EXT_glScissorArrayv];
12751   TRACE("(%d, %d, %p)\n", first, count, v );
12752   ENTER_GL();
12753   func_glScissorArrayv( first, count, v );
12754   LEAVE_GL();
12755 }
12756
12757 static void WINAPI wine_glScissorIndexed( GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height ) {
12758   void (*func_glScissorIndexed)( GLuint, GLint, GLint, GLsizei, GLsizei ) = extension_funcs[EXT_glScissorIndexed];
12759   TRACE("(%d, %d, %d, %d, %d)\n", index, left, bottom, width, height );
12760   ENTER_GL();
12761   func_glScissorIndexed( index, left, bottom, width, height );
12762   LEAVE_GL();
12763 }
12764
12765 static void WINAPI wine_glScissorIndexedv( GLuint index, GLint* v ) {
12766   void (*func_glScissorIndexedv)( GLuint, GLint* ) = extension_funcs[EXT_glScissorIndexedv];
12767   TRACE("(%d, %p)\n", index, v );
12768   ENTER_GL();
12769   func_glScissorIndexedv( index, v );
12770   LEAVE_GL();
12771 }
12772
12773 static void WINAPI wine_glSecondaryColor3b( GLbyte red, GLbyte green, GLbyte blue ) {
12774   void (*func_glSecondaryColor3b)( GLbyte, GLbyte, GLbyte ) = extension_funcs[EXT_glSecondaryColor3b];
12775   TRACE("(%d, %d, %d)\n", red, green, blue );
12776   ENTER_GL();
12777   func_glSecondaryColor3b( red, green, blue );
12778   LEAVE_GL();
12779 }
12780
12781 static void WINAPI wine_glSecondaryColor3bEXT( GLbyte red, GLbyte green, GLbyte blue ) {
12782   void (*func_glSecondaryColor3bEXT)( GLbyte, GLbyte, GLbyte ) = extension_funcs[EXT_glSecondaryColor3bEXT];
12783   TRACE("(%d, %d, %d)\n", red, green, blue );
12784   ENTER_GL();
12785   func_glSecondaryColor3bEXT( red, green, blue );
12786   LEAVE_GL();
12787 }
12788
12789 static void WINAPI wine_glSecondaryColor3bv( GLbyte* v ) {
12790   void (*func_glSecondaryColor3bv)( GLbyte* ) = extension_funcs[EXT_glSecondaryColor3bv];
12791   TRACE("(%p)\n", v );
12792   ENTER_GL();
12793   func_glSecondaryColor3bv( v );
12794   LEAVE_GL();
12795 }
12796
12797 static void WINAPI wine_glSecondaryColor3bvEXT( GLbyte* v ) {
12798   void (*func_glSecondaryColor3bvEXT)( GLbyte* ) = extension_funcs[EXT_glSecondaryColor3bvEXT];
12799   TRACE("(%p)\n", v );
12800   ENTER_GL();
12801   func_glSecondaryColor3bvEXT( v );
12802   LEAVE_GL();
12803 }
12804
12805 static void WINAPI wine_glSecondaryColor3d( GLdouble red, GLdouble green, GLdouble blue ) {
12806   void (*func_glSecondaryColor3d)( GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glSecondaryColor3d];
12807   TRACE("(%f, %f, %f)\n", red, green, blue );
12808   ENTER_GL();
12809   func_glSecondaryColor3d( red, green, blue );
12810   LEAVE_GL();
12811 }
12812
12813 static void WINAPI wine_glSecondaryColor3dEXT( GLdouble red, GLdouble green, GLdouble blue ) {
12814   void (*func_glSecondaryColor3dEXT)( GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glSecondaryColor3dEXT];
12815   TRACE("(%f, %f, %f)\n", red, green, blue );
12816   ENTER_GL();
12817   func_glSecondaryColor3dEXT( red, green, blue );
12818   LEAVE_GL();
12819 }
12820
12821 static void WINAPI wine_glSecondaryColor3dv( GLdouble* v ) {
12822   void (*func_glSecondaryColor3dv)( GLdouble* ) = extension_funcs[EXT_glSecondaryColor3dv];
12823   TRACE("(%p)\n", v );
12824   ENTER_GL();
12825   func_glSecondaryColor3dv( v );
12826   LEAVE_GL();
12827 }
12828
12829 static void WINAPI wine_glSecondaryColor3dvEXT( GLdouble* v ) {
12830   void (*func_glSecondaryColor3dvEXT)( GLdouble* ) = extension_funcs[EXT_glSecondaryColor3dvEXT];
12831   TRACE("(%p)\n", v );
12832   ENTER_GL();
12833   func_glSecondaryColor3dvEXT( v );
12834   LEAVE_GL();
12835 }
12836
12837 static void WINAPI wine_glSecondaryColor3f( GLfloat red, GLfloat green, GLfloat blue ) {
12838   void (*func_glSecondaryColor3f)( GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glSecondaryColor3f];
12839   TRACE("(%f, %f, %f)\n", red, green, blue );
12840   ENTER_GL();
12841   func_glSecondaryColor3f( red, green, blue );
12842   LEAVE_GL();
12843 }
12844
12845 static void WINAPI wine_glSecondaryColor3fEXT( GLfloat red, GLfloat green, GLfloat blue ) {
12846   void (*func_glSecondaryColor3fEXT)( GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glSecondaryColor3fEXT];
12847   TRACE("(%f, %f, %f)\n", red, green, blue );
12848   ENTER_GL();
12849   func_glSecondaryColor3fEXT( red, green, blue );
12850   LEAVE_GL();
12851 }
12852
12853 static void WINAPI wine_glSecondaryColor3fv( GLfloat* v ) {
12854   void (*func_glSecondaryColor3fv)( GLfloat* ) = extension_funcs[EXT_glSecondaryColor3fv];
12855   TRACE("(%p)\n", v );
12856   ENTER_GL();
12857   func_glSecondaryColor3fv( v );
12858   LEAVE_GL();
12859 }
12860
12861 static void WINAPI wine_glSecondaryColor3fvEXT( GLfloat* v ) {
12862   void (*func_glSecondaryColor3fvEXT)( GLfloat* ) = extension_funcs[EXT_glSecondaryColor3fvEXT];
12863   TRACE("(%p)\n", v );
12864   ENTER_GL();
12865   func_glSecondaryColor3fvEXT( v );
12866   LEAVE_GL();
12867 }
12868
12869 static void WINAPI wine_glSecondaryColor3hNV( unsigned short red, unsigned short green, unsigned short blue ) {
12870   void (*func_glSecondaryColor3hNV)( unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glSecondaryColor3hNV];
12871   TRACE("(%d, %d, %d)\n", red, green, blue );
12872   ENTER_GL();
12873   func_glSecondaryColor3hNV( red, green, blue );
12874   LEAVE_GL();
12875 }
12876
12877 static void WINAPI wine_glSecondaryColor3hvNV( unsigned short* v ) {
12878   void (*func_glSecondaryColor3hvNV)( unsigned short* ) = extension_funcs[EXT_glSecondaryColor3hvNV];
12879   TRACE("(%p)\n", v );
12880   ENTER_GL();
12881   func_glSecondaryColor3hvNV( v );
12882   LEAVE_GL();
12883 }
12884
12885 static void WINAPI wine_glSecondaryColor3i( GLint red, GLint green, GLint blue ) {
12886   void (*func_glSecondaryColor3i)( GLint, GLint, GLint ) = extension_funcs[EXT_glSecondaryColor3i];
12887   TRACE("(%d, %d, %d)\n", red, green, blue );
12888   ENTER_GL();
12889   func_glSecondaryColor3i( red, green, blue );
12890   LEAVE_GL();
12891 }
12892
12893 static void WINAPI wine_glSecondaryColor3iEXT( GLint red, GLint green, GLint blue ) {
12894   void (*func_glSecondaryColor3iEXT)( GLint, GLint, GLint ) = extension_funcs[EXT_glSecondaryColor3iEXT];
12895   TRACE("(%d, %d, %d)\n", red, green, blue );
12896   ENTER_GL();
12897   func_glSecondaryColor3iEXT( red, green, blue );
12898   LEAVE_GL();
12899 }
12900
12901 static void WINAPI wine_glSecondaryColor3iv( GLint* v ) {
12902   void (*func_glSecondaryColor3iv)( GLint* ) = extension_funcs[EXT_glSecondaryColor3iv];
12903   TRACE("(%p)\n", v );
12904   ENTER_GL();
12905   func_glSecondaryColor3iv( v );
12906   LEAVE_GL();
12907 }
12908
12909 static void WINAPI wine_glSecondaryColor3ivEXT( GLint* v ) {
12910   void (*func_glSecondaryColor3ivEXT)( GLint* ) = extension_funcs[EXT_glSecondaryColor3ivEXT];
12911   TRACE("(%p)\n", v );
12912   ENTER_GL();
12913   func_glSecondaryColor3ivEXT( v );
12914   LEAVE_GL();
12915 }
12916
12917 static void WINAPI wine_glSecondaryColor3s( GLshort red, GLshort green, GLshort blue ) {
12918   void (*func_glSecondaryColor3s)( GLshort, GLshort, GLshort ) = extension_funcs[EXT_glSecondaryColor3s];
12919   TRACE("(%d, %d, %d)\n", red, green, blue );
12920   ENTER_GL();
12921   func_glSecondaryColor3s( red, green, blue );
12922   LEAVE_GL();
12923 }
12924
12925 static void WINAPI wine_glSecondaryColor3sEXT( GLshort red, GLshort green, GLshort blue ) {
12926   void (*func_glSecondaryColor3sEXT)( GLshort, GLshort, GLshort ) = extension_funcs[EXT_glSecondaryColor3sEXT];
12927   TRACE("(%d, %d, %d)\n", red, green, blue );
12928   ENTER_GL();
12929   func_glSecondaryColor3sEXT( red, green, blue );
12930   LEAVE_GL();
12931 }
12932
12933 static void WINAPI wine_glSecondaryColor3sv( GLshort* v ) {
12934   void (*func_glSecondaryColor3sv)( GLshort* ) = extension_funcs[EXT_glSecondaryColor3sv];
12935   TRACE("(%p)\n", v );
12936   ENTER_GL();
12937   func_glSecondaryColor3sv( v );
12938   LEAVE_GL();
12939 }
12940
12941 static void WINAPI wine_glSecondaryColor3svEXT( GLshort* v ) {
12942   void (*func_glSecondaryColor3svEXT)( GLshort* ) = extension_funcs[EXT_glSecondaryColor3svEXT];
12943   TRACE("(%p)\n", v );
12944   ENTER_GL();
12945   func_glSecondaryColor3svEXT( v );
12946   LEAVE_GL();
12947 }
12948
12949 static void WINAPI wine_glSecondaryColor3ub( GLubyte red, GLubyte green, GLubyte blue ) {
12950   void (*func_glSecondaryColor3ub)( GLubyte, GLubyte, GLubyte ) = extension_funcs[EXT_glSecondaryColor3ub];
12951   TRACE("(%d, %d, %d)\n", red, green, blue );
12952   ENTER_GL();
12953   func_glSecondaryColor3ub( red, green, blue );
12954   LEAVE_GL();
12955 }
12956
12957 static void WINAPI wine_glSecondaryColor3ubEXT( GLubyte red, GLubyte green, GLubyte blue ) {
12958   void (*func_glSecondaryColor3ubEXT)( GLubyte, GLubyte, GLubyte ) = extension_funcs[EXT_glSecondaryColor3ubEXT];
12959   TRACE("(%d, %d, %d)\n", red, green, blue );
12960   ENTER_GL();
12961   func_glSecondaryColor3ubEXT( red, green, blue );
12962   LEAVE_GL();
12963 }
12964
12965 static void WINAPI wine_glSecondaryColor3ubv( GLubyte* v ) {
12966   void (*func_glSecondaryColor3ubv)( GLubyte* ) = extension_funcs[EXT_glSecondaryColor3ubv];
12967   TRACE("(%p)\n", v );
12968   ENTER_GL();
12969   func_glSecondaryColor3ubv( v );
12970   LEAVE_GL();
12971 }
12972
12973 static void WINAPI wine_glSecondaryColor3ubvEXT( GLubyte* v ) {
12974   void (*func_glSecondaryColor3ubvEXT)( GLubyte* ) = extension_funcs[EXT_glSecondaryColor3ubvEXT];
12975   TRACE("(%p)\n", v );
12976   ENTER_GL();
12977   func_glSecondaryColor3ubvEXT( v );
12978   LEAVE_GL();
12979 }
12980
12981 static void WINAPI wine_glSecondaryColor3ui( GLuint red, GLuint green, GLuint blue ) {
12982   void (*func_glSecondaryColor3ui)( GLuint, GLuint, GLuint ) = extension_funcs[EXT_glSecondaryColor3ui];
12983   TRACE("(%d, %d, %d)\n", red, green, blue );
12984   ENTER_GL();
12985   func_glSecondaryColor3ui( red, green, blue );
12986   LEAVE_GL();
12987 }
12988
12989 static void WINAPI wine_glSecondaryColor3uiEXT( GLuint red, GLuint green, GLuint blue ) {
12990   void (*func_glSecondaryColor3uiEXT)( GLuint, GLuint, GLuint ) = extension_funcs[EXT_glSecondaryColor3uiEXT];
12991   TRACE("(%d, %d, %d)\n", red, green, blue );
12992   ENTER_GL();
12993   func_glSecondaryColor3uiEXT( red, green, blue );
12994   LEAVE_GL();
12995 }
12996
12997 static void WINAPI wine_glSecondaryColor3uiv( GLuint* v ) {
12998   void (*func_glSecondaryColor3uiv)( GLuint* ) = extension_funcs[EXT_glSecondaryColor3uiv];
12999   TRACE("(%p)\n", v );
13000   ENTER_GL();
13001   func_glSecondaryColor3uiv( v );
13002   LEAVE_GL();
13003 }
13004
13005 static void WINAPI wine_glSecondaryColor3uivEXT( GLuint* v ) {
13006   void (*func_glSecondaryColor3uivEXT)( GLuint* ) = extension_funcs[EXT_glSecondaryColor3uivEXT];
13007   TRACE("(%p)\n", v );
13008   ENTER_GL();
13009   func_glSecondaryColor3uivEXT( v );
13010   LEAVE_GL();
13011 }
13012
13013 static void WINAPI wine_glSecondaryColor3us( GLushort red, GLushort green, GLushort blue ) {
13014   void (*func_glSecondaryColor3us)( GLushort, GLushort, GLushort ) = extension_funcs[EXT_glSecondaryColor3us];
13015   TRACE("(%d, %d, %d)\n", red, green, blue );
13016   ENTER_GL();
13017   func_glSecondaryColor3us( red, green, blue );
13018   LEAVE_GL();
13019 }
13020
13021 static void WINAPI wine_glSecondaryColor3usEXT( GLushort red, GLushort green, GLushort blue ) {
13022   void (*func_glSecondaryColor3usEXT)( GLushort, GLushort, GLushort ) = extension_funcs[EXT_glSecondaryColor3usEXT];
13023   TRACE("(%d, %d, %d)\n", red, green, blue );
13024   ENTER_GL();
13025   func_glSecondaryColor3usEXT( red, green, blue );
13026   LEAVE_GL();
13027 }
13028
13029 static void WINAPI wine_glSecondaryColor3usv( GLushort* v ) {
13030   void (*func_glSecondaryColor3usv)( GLushort* ) = extension_funcs[EXT_glSecondaryColor3usv];
13031   TRACE("(%p)\n", v );
13032   ENTER_GL();
13033   func_glSecondaryColor3usv( v );
13034   LEAVE_GL();
13035 }
13036
13037 static void WINAPI wine_glSecondaryColor3usvEXT( GLushort* v ) {
13038   void (*func_glSecondaryColor3usvEXT)( GLushort* ) = extension_funcs[EXT_glSecondaryColor3usvEXT];
13039   TRACE("(%p)\n", v );
13040   ENTER_GL();
13041   func_glSecondaryColor3usvEXT( v );
13042   LEAVE_GL();
13043 }
13044
13045 static void WINAPI wine_glSecondaryColorFormatNV( GLint size, GLenum type, GLsizei stride ) {
13046   void (*func_glSecondaryColorFormatNV)( GLint, GLenum, GLsizei ) = extension_funcs[EXT_glSecondaryColorFormatNV];
13047   TRACE("(%d, %d, %d)\n", size, type, stride );
13048   ENTER_GL();
13049   func_glSecondaryColorFormatNV( size, type, stride );
13050   LEAVE_GL();
13051 }
13052
13053 static void WINAPI wine_glSecondaryColorP3ui( GLenum type, GLuint color ) {
13054   void (*func_glSecondaryColorP3ui)( GLenum, GLuint ) = extension_funcs[EXT_glSecondaryColorP3ui];
13055   TRACE("(%d, %d)\n", type, color );
13056   ENTER_GL();
13057   func_glSecondaryColorP3ui( type, color );
13058   LEAVE_GL();
13059 }
13060
13061 static void WINAPI wine_glSecondaryColorP3uiv( GLenum type, GLuint* color ) {
13062   void (*func_glSecondaryColorP3uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glSecondaryColorP3uiv];
13063   TRACE("(%d, %p)\n", type, color );
13064   ENTER_GL();
13065   func_glSecondaryColorP3uiv( type, color );
13066   LEAVE_GL();
13067 }
13068
13069 static void WINAPI wine_glSecondaryColorPointer( GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
13070   void (*func_glSecondaryColorPointer)( GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glSecondaryColorPointer];
13071   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
13072   ENTER_GL();
13073   func_glSecondaryColorPointer( size, type, stride, pointer );
13074   LEAVE_GL();
13075 }
13076
13077 static void WINAPI wine_glSecondaryColorPointerEXT( GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
13078   void (*func_glSecondaryColorPointerEXT)( GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glSecondaryColorPointerEXT];
13079   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
13080   ENTER_GL();
13081   func_glSecondaryColorPointerEXT( size, type, stride, pointer );
13082   LEAVE_GL();
13083 }
13084
13085 static void WINAPI wine_glSecondaryColorPointerListIBM( GLint size, GLenum type, GLint stride, GLvoid** pointer, GLint ptrstride ) {
13086   void (*func_glSecondaryColorPointerListIBM)( GLint, GLenum, GLint, GLvoid**, GLint ) = extension_funcs[EXT_glSecondaryColorPointerListIBM];
13087   TRACE("(%d, %d, %d, %p, %d)\n", size, type, stride, pointer, ptrstride );
13088   ENTER_GL();
13089   func_glSecondaryColorPointerListIBM( size, type, stride, pointer, ptrstride );
13090   LEAVE_GL();
13091 }
13092
13093 static void WINAPI wine_glSelectPerfMonitorCountersAMD( GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList ) {
13094   void (*func_glSelectPerfMonitorCountersAMD)( GLuint, GLboolean, GLuint, GLint, GLuint* ) = extension_funcs[EXT_glSelectPerfMonitorCountersAMD];
13095   TRACE("(%d, %d, %d, %d, %p)\n", monitor, enable, group, numCounters, counterList );
13096   ENTER_GL();
13097   func_glSelectPerfMonitorCountersAMD( monitor, enable, group, numCounters, counterList );
13098   LEAVE_GL();
13099 }
13100
13101 static void WINAPI wine_glSelectTextureCoordSetSGIS( GLenum target ) {
13102   void (*func_glSelectTextureCoordSetSGIS)( GLenum ) = extension_funcs[EXT_glSelectTextureCoordSetSGIS];
13103   TRACE("(%d)\n", target );
13104   ENTER_GL();
13105   func_glSelectTextureCoordSetSGIS( target );
13106   LEAVE_GL();
13107 }
13108
13109 static void WINAPI wine_glSelectTextureSGIS( GLenum target ) {
13110   void (*func_glSelectTextureSGIS)( GLenum ) = extension_funcs[EXT_glSelectTextureSGIS];
13111   TRACE("(%d)\n", target );
13112   ENTER_GL();
13113   func_glSelectTextureSGIS( target );
13114   LEAVE_GL();
13115 }
13116
13117 static void WINAPI wine_glSeparableFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* row, GLvoid* column ) {
13118   void (*func_glSeparableFilter2D)( GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, GLvoid*, GLvoid* ) = extension_funcs[EXT_glSeparableFilter2D];
13119   TRACE("(%d, %d, %d, %d, %d, %d, %p, %p)\n", target, internalformat, width, height, format, type, row, column );
13120   ENTER_GL();
13121   func_glSeparableFilter2D( target, internalformat, width, height, format, type, row, column );
13122   LEAVE_GL();
13123 }
13124
13125 static void WINAPI wine_glSeparableFilter2DEXT( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* row, GLvoid* column ) {
13126   void (*func_glSeparableFilter2DEXT)( GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, GLvoid*, GLvoid* ) = extension_funcs[EXT_glSeparableFilter2DEXT];
13127   TRACE("(%d, %d, %d, %d, %d, %d, %p, %p)\n", target, internalformat, width, height, format, type, row, column );
13128   ENTER_GL();
13129   func_glSeparableFilter2DEXT( target, internalformat, width, height, format, type, row, column );
13130   LEAVE_GL();
13131 }
13132
13133 static void WINAPI wine_glSetFenceAPPLE( GLuint fence ) {
13134   void (*func_glSetFenceAPPLE)( GLuint ) = extension_funcs[EXT_glSetFenceAPPLE];
13135   TRACE("(%d)\n", fence );
13136   ENTER_GL();
13137   func_glSetFenceAPPLE( fence );
13138   LEAVE_GL();
13139 }
13140
13141 static void WINAPI wine_glSetFenceNV( GLuint fence, GLenum condition ) {
13142   void (*func_glSetFenceNV)( GLuint, GLenum ) = extension_funcs[EXT_glSetFenceNV];
13143   TRACE("(%d, %d)\n", fence, condition );
13144   ENTER_GL();
13145   func_glSetFenceNV( fence, condition );
13146   LEAVE_GL();
13147 }
13148
13149 static void WINAPI wine_glSetFragmentShaderConstantATI( GLuint dst, GLfloat* value ) {
13150   void (*func_glSetFragmentShaderConstantATI)( GLuint, GLfloat* ) = extension_funcs[EXT_glSetFragmentShaderConstantATI];
13151   TRACE("(%d, %p)\n", dst, value );
13152   ENTER_GL();
13153   func_glSetFragmentShaderConstantATI( dst, value );
13154   LEAVE_GL();
13155 }
13156
13157 static void WINAPI wine_glSetInvariantEXT( GLuint id, GLenum type, GLvoid* addr ) {
13158   void (*func_glSetInvariantEXT)( GLuint, GLenum, GLvoid* ) = extension_funcs[EXT_glSetInvariantEXT];
13159   TRACE("(%d, %d, %p)\n", id, type, addr );
13160   ENTER_GL();
13161   func_glSetInvariantEXT( id, type, addr );
13162   LEAVE_GL();
13163 }
13164
13165 static void WINAPI wine_glSetLocalConstantEXT( GLuint id, GLenum type, GLvoid* addr ) {
13166   void (*func_glSetLocalConstantEXT)( GLuint, GLenum, GLvoid* ) = extension_funcs[EXT_glSetLocalConstantEXT];
13167   TRACE("(%d, %d, %p)\n", id, type, addr );
13168   ENTER_GL();
13169   func_glSetLocalConstantEXT( id, type, addr );
13170   LEAVE_GL();
13171 }
13172
13173 static void WINAPI wine_glShaderBinary( GLsizei count, GLuint* shaders, GLenum binaryformat, GLvoid* binary, GLsizei length ) {
13174   void (*func_glShaderBinary)( GLsizei, GLuint*, GLenum, GLvoid*, GLsizei ) = extension_funcs[EXT_glShaderBinary];
13175   TRACE("(%d, %p, %d, %p, %d)\n", count, shaders, binaryformat, binary, length );
13176   ENTER_GL();
13177   func_glShaderBinary( count, shaders, binaryformat, binary, length );
13178   LEAVE_GL();
13179 }
13180
13181 static void WINAPI wine_glShaderOp1EXT( GLenum op, GLuint res, GLuint arg1 ) {
13182   void (*func_glShaderOp1EXT)( GLenum, GLuint, GLuint ) = extension_funcs[EXT_glShaderOp1EXT];
13183   TRACE("(%d, %d, %d)\n", op, res, arg1 );
13184   ENTER_GL();
13185   func_glShaderOp1EXT( op, res, arg1 );
13186   LEAVE_GL();
13187 }
13188
13189 static void WINAPI wine_glShaderOp2EXT( GLenum op, GLuint res, GLuint arg1, GLuint arg2 ) {
13190   void (*func_glShaderOp2EXT)( GLenum, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glShaderOp2EXT];
13191   TRACE("(%d, %d, %d, %d)\n", op, res, arg1, arg2 );
13192   ENTER_GL();
13193   func_glShaderOp2EXT( op, res, arg1, arg2 );
13194   LEAVE_GL();
13195 }
13196
13197 static void WINAPI wine_glShaderOp3EXT( GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3 ) {
13198   void (*func_glShaderOp3EXT)( GLenum, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glShaderOp3EXT];
13199   TRACE("(%d, %d, %d, %d, %d)\n", op, res, arg1, arg2, arg3 );
13200   ENTER_GL();
13201   func_glShaderOp3EXT( op, res, arg1, arg2, arg3 );
13202   LEAVE_GL();
13203 }
13204
13205 static void WINAPI wine_glShaderSource( GLuint shader, GLsizei count, char** string, GLint* length ) {
13206   void (*func_glShaderSource)( GLuint, GLsizei, char**, GLint* ) = extension_funcs[EXT_glShaderSource];
13207   TRACE("(%d, %d, %p, %p)\n", shader, count, string, length );
13208   ENTER_GL();
13209   func_glShaderSource( shader, count, string, length );
13210   LEAVE_GL();
13211 }
13212
13213 static void WINAPI wine_glShaderSourceARB( unsigned int shaderObj, GLsizei count, char** string, GLint* length ) {
13214   void (*func_glShaderSourceARB)( unsigned int, GLsizei, char**, GLint* ) = extension_funcs[EXT_glShaderSourceARB];
13215   TRACE("(%d, %d, %p, %p)\n", shaderObj, count, string, length );
13216   ENTER_GL();
13217   func_glShaderSourceARB( shaderObj, count, string, length );
13218   LEAVE_GL();
13219 }
13220
13221 static void WINAPI wine_glSharpenTexFuncSGIS( GLenum target, GLsizei n, GLfloat* points ) {
13222   void (*func_glSharpenTexFuncSGIS)( GLenum, GLsizei, GLfloat* ) = extension_funcs[EXT_glSharpenTexFuncSGIS];
13223   TRACE("(%d, %d, %p)\n", target, n, points );
13224   ENTER_GL();
13225   func_glSharpenTexFuncSGIS( target, n, points );
13226   LEAVE_GL();
13227 }
13228
13229 static void WINAPI wine_glSpriteParameterfSGIX( GLenum pname, GLfloat param ) {
13230   void (*func_glSpriteParameterfSGIX)( GLenum, GLfloat ) = extension_funcs[EXT_glSpriteParameterfSGIX];
13231   TRACE("(%d, %f)\n", pname, param );
13232   ENTER_GL();
13233   func_glSpriteParameterfSGIX( pname, param );
13234   LEAVE_GL();
13235 }
13236
13237 static void WINAPI wine_glSpriteParameterfvSGIX( GLenum pname, GLfloat* params ) {
13238   void (*func_glSpriteParameterfvSGIX)( GLenum, GLfloat* ) = extension_funcs[EXT_glSpriteParameterfvSGIX];
13239   TRACE("(%d, %p)\n", pname, params );
13240   ENTER_GL();
13241   func_glSpriteParameterfvSGIX( pname, params );
13242   LEAVE_GL();
13243 }
13244
13245 static void WINAPI wine_glSpriteParameteriSGIX( GLenum pname, GLint param ) {
13246   void (*func_glSpriteParameteriSGIX)( GLenum, GLint ) = extension_funcs[EXT_glSpriteParameteriSGIX];
13247   TRACE("(%d, %d)\n", pname, param );
13248   ENTER_GL();
13249   func_glSpriteParameteriSGIX( pname, param );
13250   LEAVE_GL();
13251 }
13252
13253 static void WINAPI wine_glSpriteParameterivSGIX( GLenum pname, GLint* params ) {
13254   void (*func_glSpriteParameterivSGIX)( GLenum, GLint* ) = extension_funcs[EXT_glSpriteParameterivSGIX];
13255   TRACE("(%d, %p)\n", pname, params );
13256   ENTER_GL();
13257   func_glSpriteParameterivSGIX( pname, params );
13258   LEAVE_GL();
13259 }
13260
13261 static void WINAPI wine_glStartInstrumentsSGIX( void ) {
13262   void (*func_glStartInstrumentsSGIX)( void ) = extension_funcs[EXT_glStartInstrumentsSGIX];
13263   TRACE("()\n");
13264   ENTER_GL();
13265   func_glStartInstrumentsSGIX( );
13266   LEAVE_GL();
13267 }
13268
13269 static void WINAPI wine_glStencilClearTagEXT( GLsizei stencilTagBits, GLuint stencilClearTag ) {
13270   void (*func_glStencilClearTagEXT)( GLsizei, GLuint ) = extension_funcs[EXT_glStencilClearTagEXT];
13271   TRACE("(%d, %d)\n", stencilTagBits, stencilClearTag );
13272   ENTER_GL();
13273   func_glStencilClearTagEXT( stencilTagBits, stencilClearTag );
13274   LEAVE_GL();
13275 }
13276
13277 static void WINAPI wine_glStencilFuncSeparate( GLenum face, GLenum func, GLint ref, GLuint mask ) {
13278   void (*func_glStencilFuncSeparate)( GLenum, GLenum, GLint, GLuint ) = extension_funcs[EXT_glStencilFuncSeparate];
13279   TRACE("(%d, %d, %d, %d)\n", face, func, ref, mask );
13280   ENTER_GL();
13281   func_glStencilFuncSeparate( face, func, ref, mask );
13282   LEAVE_GL();
13283 }
13284
13285 static void WINAPI wine_glStencilFuncSeparateATI( GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask ) {
13286   void (*func_glStencilFuncSeparateATI)( GLenum, GLenum, GLint, GLuint ) = extension_funcs[EXT_glStencilFuncSeparateATI];
13287   TRACE("(%d, %d, %d, %d)\n", frontfunc, backfunc, ref, mask );
13288   ENTER_GL();
13289   func_glStencilFuncSeparateATI( frontfunc, backfunc, ref, mask );
13290   LEAVE_GL();
13291 }
13292
13293 static void WINAPI wine_glStencilMaskSeparate( GLenum face, GLuint mask ) {
13294   void (*func_glStencilMaskSeparate)( GLenum, GLuint ) = extension_funcs[EXT_glStencilMaskSeparate];
13295   TRACE("(%d, %d)\n", face, mask );
13296   ENTER_GL();
13297   func_glStencilMaskSeparate( face, mask );
13298   LEAVE_GL();
13299 }
13300
13301 static void WINAPI wine_glStencilOpSeparate( GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass ) {
13302   void (*func_glStencilOpSeparate)( GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glStencilOpSeparate];
13303   TRACE("(%d, %d, %d, %d)\n", face, sfail, dpfail, dppass );
13304   ENTER_GL();
13305   func_glStencilOpSeparate( face, sfail, dpfail, dppass );
13306   LEAVE_GL();
13307 }
13308
13309 static void WINAPI wine_glStencilOpSeparateATI( GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass ) {
13310   void (*func_glStencilOpSeparateATI)( GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glStencilOpSeparateATI];
13311   TRACE("(%d, %d, %d, %d)\n", face, sfail, dpfail, dppass );
13312   ENTER_GL();
13313   func_glStencilOpSeparateATI( face, sfail, dpfail, dppass );
13314   LEAVE_GL();
13315 }
13316
13317 static void WINAPI wine_glStopInstrumentsSGIX( GLint marker ) {
13318   void (*func_glStopInstrumentsSGIX)( GLint ) = extension_funcs[EXT_glStopInstrumentsSGIX];
13319   TRACE("(%d)\n", marker );
13320   ENTER_GL();
13321   func_glStopInstrumentsSGIX( marker );
13322   LEAVE_GL();
13323 }
13324
13325 static void WINAPI wine_glStringMarkerGREMEDY( GLsizei len, GLvoid* string ) {
13326   void (*func_glStringMarkerGREMEDY)( GLsizei, GLvoid* ) = extension_funcs[EXT_glStringMarkerGREMEDY];
13327   TRACE("(%d, %p)\n", len, string );
13328   ENTER_GL();
13329   func_glStringMarkerGREMEDY( len, string );
13330   LEAVE_GL();
13331 }
13332
13333 static void WINAPI wine_glSwizzleEXT( GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW ) {
13334   void (*func_glSwizzleEXT)( GLuint, GLuint, GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glSwizzleEXT];
13335   TRACE("(%d, %d, %d, %d, %d, %d)\n", res, in, outX, outY, outZ, outW );
13336   ENTER_GL();
13337   func_glSwizzleEXT( res, in, outX, outY, outZ, outW );
13338   LEAVE_GL();
13339 }
13340
13341 static void WINAPI wine_glTagSampleBufferSGIX( void ) {
13342   void (*func_glTagSampleBufferSGIX)( void ) = extension_funcs[EXT_glTagSampleBufferSGIX];
13343   TRACE("()\n");
13344   ENTER_GL();
13345   func_glTagSampleBufferSGIX( );
13346   LEAVE_GL();
13347 }
13348
13349 static void WINAPI wine_glTangent3bEXT( GLbyte tx, GLbyte ty, GLbyte tz ) {
13350   void (*func_glTangent3bEXT)( GLbyte, GLbyte, GLbyte ) = extension_funcs[EXT_glTangent3bEXT];
13351   TRACE("(%d, %d, %d)\n", tx, ty, tz );
13352   ENTER_GL();
13353   func_glTangent3bEXT( tx, ty, tz );
13354   LEAVE_GL();
13355 }
13356
13357 static void WINAPI wine_glTangent3bvEXT( GLbyte* v ) {
13358   void (*func_glTangent3bvEXT)( GLbyte* ) = extension_funcs[EXT_glTangent3bvEXT];
13359   TRACE("(%p)\n", v );
13360   ENTER_GL();
13361   func_glTangent3bvEXT( v );
13362   LEAVE_GL();
13363 }
13364
13365 static void WINAPI wine_glTangent3dEXT( GLdouble tx, GLdouble ty, GLdouble tz ) {
13366   void (*func_glTangent3dEXT)( GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glTangent3dEXT];
13367   TRACE("(%f, %f, %f)\n", tx, ty, tz );
13368   ENTER_GL();
13369   func_glTangent3dEXT( tx, ty, tz );
13370   LEAVE_GL();
13371 }
13372
13373 static void WINAPI wine_glTangent3dvEXT( GLdouble* v ) {
13374   void (*func_glTangent3dvEXT)( GLdouble* ) = extension_funcs[EXT_glTangent3dvEXT];
13375   TRACE("(%p)\n", v );
13376   ENTER_GL();
13377   func_glTangent3dvEXT( v );
13378   LEAVE_GL();
13379 }
13380
13381 static void WINAPI wine_glTangent3fEXT( GLfloat tx, GLfloat ty, GLfloat tz ) {
13382   void (*func_glTangent3fEXT)( GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glTangent3fEXT];
13383   TRACE("(%f, %f, %f)\n", tx, ty, tz );
13384   ENTER_GL();
13385   func_glTangent3fEXT( tx, ty, tz );
13386   LEAVE_GL();
13387 }
13388
13389 static void WINAPI wine_glTangent3fvEXT( GLfloat* v ) {
13390   void (*func_glTangent3fvEXT)( GLfloat* ) = extension_funcs[EXT_glTangent3fvEXT];
13391   TRACE("(%p)\n", v );
13392   ENTER_GL();
13393   func_glTangent3fvEXT( v );
13394   LEAVE_GL();
13395 }
13396
13397 static void WINAPI wine_glTangent3iEXT( GLint tx, GLint ty, GLint tz ) {
13398   void (*func_glTangent3iEXT)( GLint, GLint, GLint ) = extension_funcs[EXT_glTangent3iEXT];
13399   TRACE("(%d, %d, %d)\n", tx, ty, tz );
13400   ENTER_GL();
13401   func_glTangent3iEXT( tx, ty, tz );
13402   LEAVE_GL();
13403 }
13404
13405 static void WINAPI wine_glTangent3ivEXT( GLint* v ) {
13406   void (*func_glTangent3ivEXT)( GLint* ) = extension_funcs[EXT_glTangent3ivEXT];
13407   TRACE("(%p)\n", v );
13408   ENTER_GL();
13409   func_glTangent3ivEXT( v );
13410   LEAVE_GL();
13411 }
13412
13413 static void WINAPI wine_glTangent3sEXT( GLshort tx, GLshort ty, GLshort tz ) {
13414   void (*func_glTangent3sEXT)( GLshort, GLshort, GLshort ) = extension_funcs[EXT_glTangent3sEXT];
13415   TRACE("(%d, %d, %d)\n", tx, ty, tz );
13416   ENTER_GL();
13417   func_glTangent3sEXT( tx, ty, tz );
13418   LEAVE_GL();
13419 }
13420
13421 static void WINAPI wine_glTangent3svEXT( GLshort* v ) {
13422   void (*func_glTangent3svEXT)( GLshort* ) = extension_funcs[EXT_glTangent3svEXT];
13423   TRACE("(%p)\n", v );
13424   ENTER_GL();
13425   func_glTangent3svEXT( v );
13426   LEAVE_GL();
13427 }
13428
13429 static void WINAPI wine_glTangentPointerEXT( GLenum type, GLsizei stride, GLvoid* pointer ) {
13430   void (*func_glTangentPointerEXT)( GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glTangentPointerEXT];
13431   TRACE("(%d, %d, %p)\n", type, stride, pointer );
13432   ENTER_GL();
13433   func_glTangentPointerEXT( type, stride, pointer );
13434   LEAVE_GL();
13435 }
13436
13437 static void WINAPI wine_glTbufferMask3DFX( GLuint mask ) {
13438   void (*func_glTbufferMask3DFX)( GLuint ) = extension_funcs[EXT_glTbufferMask3DFX];
13439   TRACE("(%d)\n", mask );
13440   ENTER_GL();
13441   func_glTbufferMask3DFX( mask );
13442   LEAVE_GL();
13443 }
13444
13445 static void WINAPI wine_glTessellationFactorAMD( GLfloat factor ) {
13446   void (*func_glTessellationFactorAMD)( GLfloat ) = extension_funcs[EXT_glTessellationFactorAMD];
13447   TRACE("(%f)\n", factor );
13448   ENTER_GL();
13449   func_glTessellationFactorAMD( factor );
13450   LEAVE_GL();
13451 }
13452
13453 static void WINAPI wine_glTessellationModeAMD( GLenum mode ) {
13454   void (*func_glTessellationModeAMD)( GLenum ) = extension_funcs[EXT_glTessellationModeAMD];
13455   TRACE("(%d)\n", mode );
13456   ENTER_GL();
13457   func_glTessellationModeAMD( mode );
13458   LEAVE_GL();
13459 }
13460
13461 static GLboolean WINAPI wine_glTestFenceAPPLE( GLuint fence ) {
13462   GLboolean ret_value;
13463   GLboolean (*func_glTestFenceAPPLE)( GLuint ) = extension_funcs[EXT_glTestFenceAPPLE];
13464   TRACE("(%d)\n", fence );
13465   ENTER_GL();
13466   ret_value = func_glTestFenceAPPLE( fence );
13467   LEAVE_GL();
13468   return ret_value;
13469 }
13470
13471 static GLboolean WINAPI wine_glTestFenceNV( GLuint fence ) {
13472   GLboolean ret_value;
13473   GLboolean (*func_glTestFenceNV)( GLuint ) = extension_funcs[EXT_glTestFenceNV];
13474   TRACE("(%d)\n", fence );
13475   ENTER_GL();
13476   ret_value = func_glTestFenceNV( fence );
13477   LEAVE_GL();
13478   return ret_value;
13479 }
13480
13481 static GLboolean WINAPI wine_glTestObjectAPPLE( GLenum object, GLuint name ) {
13482   GLboolean ret_value;
13483   GLboolean (*func_glTestObjectAPPLE)( GLenum, GLuint ) = extension_funcs[EXT_glTestObjectAPPLE];
13484   TRACE("(%d, %d)\n", object, name );
13485   ENTER_GL();
13486   ret_value = func_glTestObjectAPPLE( object, name );
13487   LEAVE_GL();
13488   return ret_value;
13489 }
13490
13491 static void WINAPI wine_glTexBuffer( GLenum target, GLenum internalformat, GLuint buffer ) {
13492   void (*func_glTexBuffer)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glTexBuffer];
13493   TRACE("(%d, %d, %d)\n", target, internalformat, buffer );
13494   ENTER_GL();
13495   func_glTexBuffer( target, internalformat, buffer );
13496   LEAVE_GL();
13497 }
13498
13499 static void WINAPI wine_glTexBufferARB( GLenum target, GLenum internalformat, GLuint buffer ) {
13500   void (*func_glTexBufferARB)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glTexBufferARB];
13501   TRACE("(%d, %d, %d)\n", target, internalformat, buffer );
13502   ENTER_GL();
13503   func_glTexBufferARB( target, internalformat, buffer );
13504   LEAVE_GL();
13505 }
13506
13507 static void WINAPI wine_glTexBufferEXT( GLenum target, GLenum internalformat, GLuint buffer ) {
13508   void (*func_glTexBufferEXT)( GLenum, GLenum, GLuint ) = extension_funcs[EXT_glTexBufferEXT];
13509   TRACE("(%d, %d, %d)\n", target, internalformat, buffer );
13510   ENTER_GL();
13511   func_glTexBufferEXT( target, internalformat, buffer );
13512   LEAVE_GL();
13513 }
13514
13515 static void WINAPI wine_glTexBumpParameterfvATI( GLenum pname, GLfloat* param ) {
13516   void (*func_glTexBumpParameterfvATI)( GLenum, GLfloat* ) = extension_funcs[EXT_glTexBumpParameterfvATI];
13517   TRACE("(%d, %p)\n", pname, param );
13518   ENTER_GL();
13519   func_glTexBumpParameterfvATI( pname, param );
13520   LEAVE_GL();
13521 }
13522
13523 static void WINAPI wine_glTexBumpParameterivATI( GLenum pname, GLint* param ) {
13524   void (*func_glTexBumpParameterivATI)( GLenum, GLint* ) = extension_funcs[EXT_glTexBumpParameterivATI];
13525   TRACE("(%d, %p)\n", pname, param );
13526   ENTER_GL();
13527   func_glTexBumpParameterivATI( pname, param );
13528   LEAVE_GL();
13529 }
13530
13531 static void WINAPI wine_glTexCoord1hNV( unsigned short s ) {
13532   void (*func_glTexCoord1hNV)( unsigned short ) = extension_funcs[EXT_glTexCoord1hNV];
13533   TRACE("(%d)\n", s );
13534   ENTER_GL();
13535   func_glTexCoord1hNV( s );
13536   LEAVE_GL();
13537 }
13538
13539 static void WINAPI wine_glTexCoord1hvNV( unsigned short* v ) {
13540   void (*func_glTexCoord1hvNV)( unsigned short* ) = extension_funcs[EXT_glTexCoord1hvNV];
13541   TRACE("(%p)\n", v );
13542   ENTER_GL();
13543   func_glTexCoord1hvNV( v );
13544   LEAVE_GL();
13545 }
13546
13547 static void WINAPI wine_glTexCoord2fColor3fVertex3fSUN( GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z ) {
13548   void (*func_glTexCoord2fColor3fVertex3fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glTexCoord2fColor3fVertex3fSUN];
13549   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f)\n", s, t, r, g, b, x, y, z );
13550   ENTER_GL();
13551   func_glTexCoord2fColor3fVertex3fSUN( s, t, r, g, b, x, y, z );
13552   LEAVE_GL();
13553 }
13554
13555 static void WINAPI wine_glTexCoord2fColor3fVertex3fvSUN( GLfloat* tc, GLfloat* c, GLfloat* v ) {
13556   void (*func_glTexCoord2fColor3fVertex3fvSUN)( GLfloat*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glTexCoord2fColor3fVertex3fvSUN];
13557   TRACE("(%p, %p, %p)\n", tc, c, v );
13558   ENTER_GL();
13559   func_glTexCoord2fColor3fVertex3fvSUN( tc, c, v );
13560   LEAVE_GL();
13561 }
13562
13563 static void WINAPI wine_glTexCoord2fColor4fNormal3fVertex3fSUN( GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
13564   void (*func_glTexCoord2fColor4fNormal3fVertex3fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glTexCoord2fColor4fNormal3fVertex3fSUN];
13565   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f)\n", s, t, r, g, b, a, nx, ny, nz, x, y, z );
13566   ENTER_GL();
13567   func_glTexCoord2fColor4fNormal3fVertex3fSUN( s, t, r, g, b, a, nx, ny, nz, x, y, z );
13568   LEAVE_GL();
13569 }
13570
13571 static void WINAPI wine_glTexCoord2fColor4fNormal3fVertex3fvSUN( GLfloat* tc, GLfloat* c, GLfloat* n, GLfloat* v ) {
13572   void (*func_glTexCoord2fColor4fNormal3fVertex3fvSUN)( GLfloat*, GLfloat*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glTexCoord2fColor4fNormal3fVertex3fvSUN];
13573   TRACE("(%p, %p, %p, %p)\n", tc, c, n, v );
13574   ENTER_GL();
13575   func_glTexCoord2fColor4fNormal3fVertex3fvSUN( tc, c, n, v );
13576   LEAVE_GL();
13577 }
13578
13579 static void WINAPI wine_glTexCoord2fColor4ubVertex3fSUN( GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z ) {
13580   void (*func_glTexCoord2fColor4ubVertex3fSUN)( GLfloat, GLfloat, GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glTexCoord2fColor4ubVertex3fSUN];
13581   TRACE("(%f, %f, %d, %d, %d, %d, %f, %f, %f)\n", s, t, r, g, b, a, x, y, z );
13582   ENTER_GL();
13583   func_glTexCoord2fColor4ubVertex3fSUN( s, t, r, g, b, a, x, y, z );
13584   LEAVE_GL();
13585 }
13586
13587 static void WINAPI wine_glTexCoord2fColor4ubVertex3fvSUN( GLfloat* tc, GLubyte* c, GLfloat* v ) {
13588   void (*func_glTexCoord2fColor4ubVertex3fvSUN)( GLfloat*, GLubyte*, GLfloat* ) = extension_funcs[EXT_glTexCoord2fColor4ubVertex3fvSUN];
13589   TRACE("(%p, %p, %p)\n", tc, c, v );
13590   ENTER_GL();
13591   func_glTexCoord2fColor4ubVertex3fvSUN( tc, c, v );
13592   LEAVE_GL();
13593 }
13594
13595 static void WINAPI wine_glTexCoord2fNormal3fVertex3fSUN( GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
13596   void (*func_glTexCoord2fNormal3fVertex3fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glTexCoord2fNormal3fVertex3fSUN];
13597   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f)\n", s, t, nx, ny, nz, x, y, z );
13598   ENTER_GL();
13599   func_glTexCoord2fNormal3fVertex3fSUN( s, t, nx, ny, nz, x, y, z );
13600   LEAVE_GL();
13601 }
13602
13603 static void WINAPI wine_glTexCoord2fNormal3fVertex3fvSUN( GLfloat* tc, GLfloat* n, GLfloat* v ) {
13604   void (*func_glTexCoord2fNormal3fVertex3fvSUN)( GLfloat*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glTexCoord2fNormal3fVertex3fvSUN];
13605   TRACE("(%p, %p, %p)\n", tc, n, v );
13606   ENTER_GL();
13607   func_glTexCoord2fNormal3fVertex3fvSUN( tc, n, v );
13608   LEAVE_GL();
13609 }
13610
13611 static void WINAPI wine_glTexCoord2fVertex3fSUN( GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z ) {
13612   void (*func_glTexCoord2fVertex3fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glTexCoord2fVertex3fSUN];
13613   TRACE("(%f, %f, %f, %f, %f)\n", s, t, x, y, z );
13614   ENTER_GL();
13615   func_glTexCoord2fVertex3fSUN( s, t, x, y, z );
13616   LEAVE_GL();
13617 }
13618
13619 static void WINAPI wine_glTexCoord2fVertex3fvSUN( GLfloat* tc, GLfloat* v ) {
13620   void (*func_glTexCoord2fVertex3fvSUN)( GLfloat*, GLfloat* ) = extension_funcs[EXT_glTexCoord2fVertex3fvSUN];
13621   TRACE("(%p, %p)\n", tc, v );
13622   ENTER_GL();
13623   func_glTexCoord2fVertex3fvSUN( tc, v );
13624   LEAVE_GL();
13625 }
13626
13627 static void WINAPI wine_glTexCoord2hNV( unsigned short s, unsigned short t ) {
13628   void (*func_glTexCoord2hNV)( unsigned short, unsigned short ) = extension_funcs[EXT_glTexCoord2hNV];
13629   TRACE("(%d, %d)\n", s, t );
13630   ENTER_GL();
13631   func_glTexCoord2hNV( s, t );
13632   LEAVE_GL();
13633 }
13634
13635 static void WINAPI wine_glTexCoord2hvNV( unsigned short* v ) {
13636   void (*func_glTexCoord2hvNV)( unsigned short* ) = extension_funcs[EXT_glTexCoord2hvNV];
13637   TRACE("(%p)\n", v );
13638   ENTER_GL();
13639   func_glTexCoord2hvNV( v );
13640   LEAVE_GL();
13641 }
13642
13643 static void WINAPI wine_glTexCoord3hNV( unsigned short s, unsigned short t, unsigned short r ) {
13644   void (*func_glTexCoord3hNV)( unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glTexCoord3hNV];
13645   TRACE("(%d, %d, %d)\n", s, t, r );
13646   ENTER_GL();
13647   func_glTexCoord3hNV( s, t, r );
13648   LEAVE_GL();
13649 }
13650
13651 static void WINAPI wine_glTexCoord3hvNV( unsigned short* v ) {
13652   void (*func_glTexCoord3hvNV)( unsigned short* ) = extension_funcs[EXT_glTexCoord3hvNV];
13653   TRACE("(%p)\n", v );
13654   ENTER_GL();
13655   func_glTexCoord3hvNV( v );
13656   LEAVE_GL();
13657 }
13658
13659 static void WINAPI wine_glTexCoord4fColor4fNormal3fVertex4fSUN( GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
13660   void (*func_glTexCoord4fColor4fNormal3fVertex4fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glTexCoord4fColor4fNormal3fVertex4fSUN];
13661   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f)\n", s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w );
13662   ENTER_GL();
13663   func_glTexCoord4fColor4fNormal3fVertex4fSUN( s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w );
13664   LEAVE_GL();
13665 }
13666
13667 static void WINAPI wine_glTexCoord4fColor4fNormal3fVertex4fvSUN( GLfloat* tc, GLfloat* c, GLfloat* n, GLfloat* v ) {
13668   void (*func_glTexCoord4fColor4fNormal3fVertex4fvSUN)( GLfloat*, GLfloat*, GLfloat*, GLfloat* ) = extension_funcs[EXT_glTexCoord4fColor4fNormal3fVertex4fvSUN];
13669   TRACE("(%p, %p, %p, %p)\n", tc, c, n, v );
13670   ENTER_GL();
13671   func_glTexCoord4fColor4fNormal3fVertex4fvSUN( tc, c, n, v );
13672   LEAVE_GL();
13673 }
13674
13675 static void WINAPI wine_glTexCoord4fVertex4fSUN( GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
13676   void (*func_glTexCoord4fVertex4fSUN)( GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glTexCoord4fVertex4fSUN];
13677   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f)\n", s, t, p, q, x, y, z, w );
13678   ENTER_GL();
13679   func_glTexCoord4fVertex4fSUN( s, t, p, q, x, y, z, w );
13680   LEAVE_GL();
13681 }
13682
13683 static void WINAPI wine_glTexCoord4fVertex4fvSUN( GLfloat* tc, GLfloat* v ) {
13684   void (*func_glTexCoord4fVertex4fvSUN)( GLfloat*, GLfloat* ) = extension_funcs[EXT_glTexCoord4fVertex4fvSUN];
13685   TRACE("(%p, %p)\n", tc, v );
13686   ENTER_GL();
13687   func_glTexCoord4fVertex4fvSUN( tc, v );
13688   LEAVE_GL();
13689 }
13690
13691 static void WINAPI wine_glTexCoord4hNV( unsigned short s, unsigned short t, unsigned short r, unsigned short q ) {
13692   void (*func_glTexCoord4hNV)( unsigned short, unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glTexCoord4hNV];
13693   TRACE("(%d, %d, %d, %d)\n", s, t, r, q );
13694   ENTER_GL();
13695   func_glTexCoord4hNV( s, t, r, q );
13696   LEAVE_GL();
13697 }
13698
13699 static void WINAPI wine_glTexCoord4hvNV( unsigned short* v ) {
13700   void (*func_glTexCoord4hvNV)( unsigned short* ) = extension_funcs[EXT_glTexCoord4hvNV];
13701   TRACE("(%p)\n", v );
13702   ENTER_GL();
13703   func_glTexCoord4hvNV( v );
13704   LEAVE_GL();
13705 }
13706
13707 static void WINAPI wine_glTexCoordFormatNV( GLint size, GLenum type, GLsizei stride ) {
13708   void (*func_glTexCoordFormatNV)( GLint, GLenum, GLsizei ) = extension_funcs[EXT_glTexCoordFormatNV];
13709   TRACE("(%d, %d, %d)\n", size, type, stride );
13710   ENTER_GL();
13711   func_glTexCoordFormatNV( size, type, stride );
13712   LEAVE_GL();
13713 }
13714
13715 static void WINAPI wine_glTexCoordP1ui( GLenum type, GLuint coords ) {
13716   void (*func_glTexCoordP1ui)( GLenum, GLuint ) = extension_funcs[EXT_glTexCoordP1ui];
13717   TRACE("(%d, %d)\n", type, coords );
13718   ENTER_GL();
13719   func_glTexCoordP1ui( type, coords );
13720   LEAVE_GL();
13721 }
13722
13723 static void WINAPI wine_glTexCoordP1uiv( GLenum type, GLuint* coords ) {
13724   void (*func_glTexCoordP1uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glTexCoordP1uiv];
13725   TRACE("(%d, %p)\n", type, coords );
13726   ENTER_GL();
13727   func_glTexCoordP1uiv( type, coords );
13728   LEAVE_GL();
13729 }
13730
13731 static void WINAPI wine_glTexCoordP2ui( GLenum type, GLuint coords ) {
13732   void (*func_glTexCoordP2ui)( GLenum, GLuint ) = extension_funcs[EXT_glTexCoordP2ui];
13733   TRACE("(%d, %d)\n", type, coords );
13734   ENTER_GL();
13735   func_glTexCoordP2ui( type, coords );
13736   LEAVE_GL();
13737 }
13738
13739 static void WINAPI wine_glTexCoordP2uiv( GLenum type, GLuint* coords ) {
13740   void (*func_glTexCoordP2uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glTexCoordP2uiv];
13741   TRACE("(%d, %p)\n", type, coords );
13742   ENTER_GL();
13743   func_glTexCoordP2uiv( type, coords );
13744   LEAVE_GL();
13745 }
13746
13747 static void WINAPI wine_glTexCoordP3ui( GLenum type, GLuint coords ) {
13748   void (*func_glTexCoordP3ui)( GLenum, GLuint ) = extension_funcs[EXT_glTexCoordP3ui];
13749   TRACE("(%d, %d)\n", type, coords );
13750   ENTER_GL();
13751   func_glTexCoordP3ui( type, coords );
13752   LEAVE_GL();
13753 }
13754
13755 static void WINAPI wine_glTexCoordP3uiv( GLenum type, GLuint* coords ) {
13756   void (*func_glTexCoordP3uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glTexCoordP3uiv];
13757   TRACE("(%d, %p)\n", type, coords );
13758   ENTER_GL();
13759   func_glTexCoordP3uiv( type, coords );
13760   LEAVE_GL();
13761 }
13762
13763 static void WINAPI wine_glTexCoordP4ui( GLenum type, GLuint coords ) {
13764   void (*func_glTexCoordP4ui)( GLenum, GLuint ) = extension_funcs[EXT_glTexCoordP4ui];
13765   TRACE("(%d, %d)\n", type, coords );
13766   ENTER_GL();
13767   func_glTexCoordP4ui( type, coords );
13768   LEAVE_GL();
13769 }
13770
13771 static void WINAPI wine_glTexCoordP4uiv( GLenum type, GLuint* coords ) {
13772   void (*func_glTexCoordP4uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glTexCoordP4uiv];
13773   TRACE("(%d, %p)\n", type, coords );
13774   ENTER_GL();
13775   func_glTexCoordP4uiv( type, coords );
13776   LEAVE_GL();
13777 }
13778
13779 static void WINAPI wine_glTexCoordPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, GLvoid* pointer ) {
13780   void (*func_glTexCoordPointerEXT)( GLint, GLenum, GLsizei, GLsizei, GLvoid* ) = extension_funcs[EXT_glTexCoordPointerEXT];
13781   TRACE("(%d, %d, %d, %d, %p)\n", size, type, stride, count, pointer );
13782   ENTER_GL();
13783   func_glTexCoordPointerEXT( size, type, stride, count, pointer );
13784   LEAVE_GL();
13785 }
13786
13787 static void WINAPI wine_glTexCoordPointerListIBM( GLint size, GLenum type, GLint stride, GLvoid** pointer, GLint ptrstride ) {
13788   void (*func_glTexCoordPointerListIBM)( GLint, GLenum, GLint, GLvoid**, GLint ) = extension_funcs[EXT_glTexCoordPointerListIBM];
13789   TRACE("(%d, %d, %d, %p, %d)\n", size, type, stride, pointer, ptrstride );
13790   ENTER_GL();
13791   func_glTexCoordPointerListIBM( size, type, stride, pointer, ptrstride );
13792   LEAVE_GL();
13793 }
13794
13795 static void WINAPI wine_glTexCoordPointervINTEL( GLint size, GLenum type, GLvoid** pointer ) {
13796   void (*func_glTexCoordPointervINTEL)( GLint, GLenum, GLvoid** ) = extension_funcs[EXT_glTexCoordPointervINTEL];
13797   TRACE("(%d, %d, %p)\n", size, type, pointer );
13798   ENTER_GL();
13799   func_glTexCoordPointervINTEL( size, type, pointer );
13800   LEAVE_GL();
13801 }
13802
13803 static void WINAPI wine_glTexFilterFuncSGIS( GLenum target, GLenum filter, GLsizei n, GLfloat* weights ) {
13804   void (*func_glTexFilterFuncSGIS)( GLenum, GLenum, GLsizei, GLfloat* ) = extension_funcs[EXT_glTexFilterFuncSGIS];
13805   TRACE("(%d, %d, %d, %p)\n", target, filter, n, weights );
13806   ENTER_GL();
13807   func_glTexFilterFuncSGIS( target, filter, n, weights );
13808   LEAVE_GL();
13809 }
13810
13811 static void WINAPI wine_glTexImage2DMultisample( GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations ) {
13812   void (*func_glTexImage2DMultisample)( GLenum, GLsizei, GLint, GLsizei, GLsizei, GLboolean ) = extension_funcs[EXT_glTexImage2DMultisample];
13813   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height, fixedsamplelocations );
13814   ENTER_GL();
13815   func_glTexImage2DMultisample( target, samples, internalformat, width, height, fixedsamplelocations );
13816   LEAVE_GL();
13817 }
13818
13819 static void WINAPI wine_glTexImage3D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
13820   void (*func_glTexImage3D)( GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTexImage3D];
13821   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, border, format, type, pixels );
13822   ENTER_GL();
13823   func_glTexImage3D( target, level, internalformat, width, height, depth, border, format, type, pixels );
13824   LEAVE_GL();
13825 }
13826
13827 static void WINAPI wine_glTexImage3DEXT( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
13828   void (*func_glTexImage3DEXT)( GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTexImage3DEXT];
13829   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, border, format, type, pixels );
13830   ENTER_GL();
13831   func_glTexImage3DEXT( target, level, internalformat, width, height, depth, border, format, type, pixels );
13832   LEAVE_GL();
13833 }
13834
13835 static void WINAPI wine_glTexImage3DMultisample( GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations ) {
13836   void (*func_glTexImage3DMultisample)( GLenum, GLsizei, GLint, GLsizei, GLsizei, GLsizei, GLboolean ) = extension_funcs[EXT_glTexImage3DMultisample];
13837   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height, depth, fixedsamplelocations );
13838   ENTER_GL();
13839   func_glTexImage3DMultisample( target, samples, internalformat, width, height, depth, fixedsamplelocations );
13840   LEAVE_GL();
13841 }
13842
13843 static void WINAPI wine_glTexImage4DSGIS( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
13844   void (*func_glTexImage4DSGIS)( GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTexImage4DSGIS];
13845   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, size4d, border, format, type, pixels );
13846   ENTER_GL();
13847   func_glTexImage4DSGIS( target, level, internalformat, width, height, depth, size4d, border, format, type, pixels );
13848   LEAVE_GL();
13849 }
13850
13851 static void WINAPI wine_glTexParameterIiv( GLenum target, GLenum pname, GLint* params ) {
13852   void (*func_glTexParameterIiv)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glTexParameterIiv];
13853   TRACE("(%d, %d, %p)\n", target, pname, params );
13854   ENTER_GL();
13855   func_glTexParameterIiv( target, pname, params );
13856   LEAVE_GL();
13857 }
13858
13859 static void WINAPI wine_glTexParameterIivEXT( GLenum target, GLenum pname, GLint* params ) {
13860   void (*func_glTexParameterIivEXT)( GLenum, GLenum, GLint* ) = extension_funcs[EXT_glTexParameterIivEXT];
13861   TRACE("(%d, %d, %p)\n", target, pname, params );
13862   ENTER_GL();
13863   func_glTexParameterIivEXT( target, pname, params );
13864   LEAVE_GL();
13865 }
13866
13867 static void WINAPI wine_glTexParameterIuiv( GLenum target, GLenum pname, GLuint* params ) {
13868   void (*func_glTexParameterIuiv)( GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glTexParameterIuiv];
13869   TRACE("(%d, %d, %p)\n", target, pname, params );
13870   ENTER_GL();
13871   func_glTexParameterIuiv( target, pname, params );
13872   LEAVE_GL();
13873 }
13874
13875 static void WINAPI wine_glTexParameterIuivEXT( GLenum target, GLenum pname, GLuint* params ) {
13876   void (*func_glTexParameterIuivEXT)( GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glTexParameterIuivEXT];
13877   TRACE("(%d, %d, %p)\n", target, pname, params );
13878   ENTER_GL();
13879   func_glTexParameterIuivEXT( target, pname, params );
13880   LEAVE_GL();
13881 }
13882
13883 static void WINAPI wine_glTexRenderbufferNV( GLenum target, GLuint renderbuffer ) {
13884   void (*func_glTexRenderbufferNV)( GLenum, GLuint ) = extension_funcs[EXT_glTexRenderbufferNV];
13885   TRACE("(%d, %d)\n", target, renderbuffer );
13886   ENTER_GL();
13887   func_glTexRenderbufferNV( target, renderbuffer );
13888   LEAVE_GL();
13889 }
13890
13891 static void WINAPI wine_glTexSubImage1DEXT( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, GLvoid* pixels ) {
13892   void (*func_glTexSubImage1DEXT)( GLenum, GLint, GLint, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTexSubImage1DEXT];
13893   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, width, format, type, pixels );
13894   ENTER_GL();
13895   func_glTexSubImage1DEXT( target, level, xoffset, width, format, type, pixels );
13896   LEAVE_GL();
13897 }
13898
13899 static void WINAPI wine_glTexSubImage2DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels ) {
13900   void (*func_glTexSubImage2DEXT)( GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTexSubImage2DEXT];
13901   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, width, height, format, type, pixels );
13902   ENTER_GL();
13903   func_glTexSubImage2DEXT( target, level, xoffset, yoffset, width, height, format, type, pixels );
13904   LEAVE_GL();
13905 }
13906
13907 static void WINAPI wine_glTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid* pixels ) {
13908   void (*func_glTexSubImage3D)( GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTexSubImage3D];
13909   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
13910   ENTER_GL();
13911   func_glTexSubImage3D( target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
13912   LEAVE_GL();
13913 }
13914
13915 static void WINAPI wine_glTexSubImage3DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid* pixels ) {
13916   void (*func_glTexSubImage3DEXT)( GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTexSubImage3DEXT];
13917   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
13918   ENTER_GL();
13919   func_glTexSubImage3DEXT( target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
13920   LEAVE_GL();
13921 }
13922
13923 static void WINAPI wine_glTexSubImage4DSGIS( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLenum format, GLenum type, GLvoid* pixels ) {
13924   void (*func_glTexSubImage4DSGIS)( GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTexSubImage4DSGIS];
13925   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, woffset, width, height, depth, size4d, format, type, pixels );
13926   ENTER_GL();
13927   func_glTexSubImage4DSGIS( target, level, xoffset, yoffset, zoffset, woffset, width, height, depth, size4d, format, type, pixels );
13928   LEAVE_GL();
13929 }
13930
13931 static void WINAPI wine_glTextureBarrierNV( void ) {
13932   void (*func_glTextureBarrierNV)( void ) = extension_funcs[EXT_glTextureBarrierNV];
13933   TRACE("()\n");
13934   ENTER_GL();
13935   func_glTextureBarrierNV( );
13936   LEAVE_GL();
13937 }
13938
13939 static void WINAPI wine_glTextureBufferEXT( GLuint texture, GLenum target, GLenum internalformat, GLuint buffer ) {
13940   void (*func_glTextureBufferEXT)( GLuint, GLenum, GLenum, GLuint ) = extension_funcs[EXT_glTextureBufferEXT];
13941   TRACE("(%d, %d, %d, %d)\n", texture, target, internalformat, buffer );
13942   ENTER_GL();
13943   func_glTextureBufferEXT( texture, target, internalformat, buffer );
13944   LEAVE_GL();
13945 }
13946
13947 static void WINAPI wine_glTextureColorMaskSGIS( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ) {
13948   void (*func_glTextureColorMaskSGIS)( GLboolean, GLboolean, GLboolean, GLboolean ) = extension_funcs[EXT_glTextureColorMaskSGIS];
13949   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
13950   ENTER_GL();
13951   func_glTextureColorMaskSGIS( red, green, blue, alpha );
13952   LEAVE_GL();
13953 }
13954
13955 static void WINAPI wine_glTextureImage1DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
13956   void (*func_glTextureImage1DEXT)( GLuint, GLenum, GLint, GLenum, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTextureImage1DEXT];
13957   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, border, format, type, pixels );
13958   ENTER_GL();
13959   func_glTextureImage1DEXT( texture, target, level, internalformat, width, border, format, type, pixels );
13960   LEAVE_GL();
13961 }
13962
13963 static void WINAPI wine_glTextureImage2DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
13964   void (*func_glTextureImage2DEXT)( GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTextureImage2DEXT];
13965   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, height, border, format, type, pixels );
13966   ENTER_GL();
13967   func_glTextureImage2DEXT( texture, target, level, internalformat, width, height, border, format, type, pixels );
13968   LEAVE_GL();
13969 }
13970
13971 static void WINAPI wine_glTextureImage3DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, GLvoid* pixels ) {
13972   void (*func_glTextureImage3DEXT)( GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTextureImage3DEXT];
13973   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, height, depth, border, format, type, pixels );
13974   ENTER_GL();
13975   func_glTextureImage3DEXT( texture, target, level, internalformat, width, height, depth, border, format, type, pixels );
13976   LEAVE_GL();
13977 }
13978
13979 static void WINAPI wine_glTextureLightEXT( GLenum pname ) {
13980   void (*func_glTextureLightEXT)( GLenum ) = extension_funcs[EXT_glTextureLightEXT];
13981   TRACE("(%d)\n", pname );
13982   ENTER_GL();
13983   func_glTextureLightEXT( pname );
13984   LEAVE_GL();
13985 }
13986
13987 static void WINAPI wine_glTextureMaterialEXT( GLenum face, GLenum mode ) {
13988   void (*func_glTextureMaterialEXT)( GLenum, GLenum ) = extension_funcs[EXT_glTextureMaterialEXT];
13989   TRACE("(%d, %d)\n", face, mode );
13990   ENTER_GL();
13991   func_glTextureMaterialEXT( face, mode );
13992   LEAVE_GL();
13993 }
13994
13995 static void WINAPI wine_glTextureNormalEXT( GLenum mode ) {
13996   void (*func_glTextureNormalEXT)( GLenum ) = extension_funcs[EXT_glTextureNormalEXT];
13997   TRACE("(%d)\n", mode );
13998   ENTER_GL();
13999   func_glTextureNormalEXT( mode );
14000   LEAVE_GL();
14001 }
14002
14003 static void WINAPI wine_glTextureParameterIivEXT( GLuint texture, GLenum target, GLenum pname, GLint* params ) {
14004   void (*func_glTextureParameterIivEXT)( GLuint, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glTextureParameterIivEXT];
14005   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
14006   ENTER_GL();
14007   func_glTextureParameterIivEXT( texture, target, pname, params );
14008   LEAVE_GL();
14009 }
14010
14011 static void WINAPI wine_glTextureParameterIuivEXT( GLuint texture, GLenum target, GLenum pname, GLuint* params ) {
14012   void (*func_glTextureParameterIuivEXT)( GLuint, GLenum, GLenum, GLuint* ) = extension_funcs[EXT_glTextureParameterIuivEXT];
14013   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
14014   ENTER_GL();
14015   func_glTextureParameterIuivEXT( texture, target, pname, params );
14016   LEAVE_GL();
14017 }
14018
14019 static void WINAPI wine_glTextureParameterfEXT( GLuint texture, GLenum target, GLenum pname, GLfloat param ) {
14020   void (*func_glTextureParameterfEXT)( GLuint, GLenum, GLenum, GLfloat ) = extension_funcs[EXT_glTextureParameterfEXT];
14021   TRACE("(%d, %d, %d, %f)\n", texture, target, pname, param );
14022   ENTER_GL();
14023   func_glTextureParameterfEXT( texture, target, pname, param );
14024   LEAVE_GL();
14025 }
14026
14027 static void WINAPI wine_glTextureParameterfvEXT( GLuint texture, GLenum target, GLenum pname, GLfloat* params ) {
14028   void (*func_glTextureParameterfvEXT)( GLuint, GLenum, GLenum, GLfloat* ) = extension_funcs[EXT_glTextureParameterfvEXT];
14029   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
14030   ENTER_GL();
14031   func_glTextureParameterfvEXT( texture, target, pname, params );
14032   LEAVE_GL();
14033 }
14034
14035 static void WINAPI wine_glTextureParameteriEXT( GLuint texture, GLenum target, GLenum pname, GLint param ) {
14036   void (*func_glTextureParameteriEXT)( GLuint, GLenum, GLenum, GLint ) = extension_funcs[EXT_glTextureParameteriEXT];
14037   TRACE("(%d, %d, %d, %d)\n", texture, target, pname, param );
14038   ENTER_GL();
14039   func_glTextureParameteriEXT( texture, target, pname, param );
14040   LEAVE_GL();
14041 }
14042
14043 static void WINAPI wine_glTextureParameterivEXT( GLuint texture, GLenum target, GLenum pname, GLint* params ) {
14044   void (*func_glTextureParameterivEXT)( GLuint, GLenum, GLenum, GLint* ) = extension_funcs[EXT_glTextureParameterivEXT];
14045   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
14046   ENTER_GL();
14047   func_glTextureParameterivEXT( texture, target, pname, params );
14048   LEAVE_GL();
14049 }
14050
14051 static void WINAPI wine_glTextureRangeAPPLE( GLenum target, GLsizei length, GLvoid* pointer ) {
14052   void (*func_glTextureRangeAPPLE)( GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glTextureRangeAPPLE];
14053   TRACE("(%d, %d, %p)\n", target, length, pointer );
14054   ENTER_GL();
14055   func_glTextureRangeAPPLE( target, length, pointer );
14056   LEAVE_GL();
14057 }
14058
14059 static void WINAPI wine_glTextureRenderbufferEXT( GLuint texture, GLenum target, GLuint renderbuffer ) {
14060   void (*func_glTextureRenderbufferEXT)( GLuint, GLenum, GLuint ) = extension_funcs[EXT_glTextureRenderbufferEXT];
14061   TRACE("(%d, %d, %d)\n", texture, target, renderbuffer );
14062   ENTER_GL();
14063   func_glTextureRenderbufferEXT( texture, target, renderbuffer );
14064   LEAVE_GL();
14065 }
14066
14067 static void WINAPI wine_glTextureSubImage1DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, GLvoid* pixels ) {
14068   void (*func_glTextureSubImage1DEXT)( GLuint, GLenum, GLint, GLint, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTextureSubImage1DEXT];
14069   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, width, format, type, pixels );
14070   ENTER_GL();
14071   func_glTextureSubImage1DEXT( texture, target, level, xoffset, width, format, type, pixels );
14072   LEAVE_GL();
14073 }
14074
14075 static void WINAPI wine_glTextureSubImage2DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels ) {
14076   void (*func_glTextureSubImage2DEXT)( GLuint, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTextureSubImage2DEXT];
14077   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, yoffset, width, height, format, type, pixels );
14078   ENTER_GL();
14079   func_glTextureSubImage2DEXT( texture, target, level, xoffset, yoffset, width, height, format, type, pixels );
14080   LEAVE_GL();
14081 }
14082
14083 static void WINAPI wine_glTextureSubImage3DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid* pixels ) {
14084   void (*func_glTextureSubImage3DEXT)( GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLvoid* ) = extension_funcs[EXT_glTextureSubImage3DEXT];
14085   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
14086   ENTER_GL();
14087   func_glTextureSubImage3DEXT( texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
14088   LEAVE_GL();
14089 }
14090
14091 static void WINAPI wine_glTrackMatrixNV( GLenum target, GLuint address, GLenum matrix, GLenum transform ) {
14092   void (*func_glTrackMatrixNV)( GLenum, GLuint, GLenum, GLenum ) = extension_funcs[EXT_glTrackMatrixNV];
14093   TRACE("(%d, %d, %d, %d)\n", target, address, matrix, transform );
14094   ENTER_GL();
14095   func_glTrackMatrixNV( target, address, matrix, transform );
14096   LEAVE_GL();
14097 }
14098
14099 static void WINAPI wine_glTransformFeedbackAttribsNV( GLuint count, GLint* attribs, GLenum bufferMode ) {
14100   void (*func_glTransformFeedbackAttribsNV)( GLuint, GLint*, GLenum ) = extension_funcs[EXT_glTransformFeedbackAttribsNV];
14101   TRACE("(%d, %p, %d)\n", count, attribs, bufferMode );
14102   ENTER_GL();
14103   func_glTransformFeedbackAttribsNV( count, attribs, bufferMode );
14104   LEAVE_GL();
14105 }
14106
14107 static void WINAPI wine_glTransformFeedbackStreamAttribsNV( GLsizei count, GLint* attribs, GLsizei nbuffers, GLint* bufstreams, GLenum bufferMode ) {
14108   void (*func_glTransformFeedbackStreamAttribsNV)( GLsizei, GLint*, GLsizei, GLint*, GLenum ) = extension_funcs[EXT_glTransformFeedbackStreamAttribsNV];
14109   TRACE("(%d, %p, %d, %p, %d)\n", count, attribs, nbuffers, bufstreams, bufferMode );
14110   ENTER_GL();
14111   func_glTransformFeedbackStreamAttribsNV( count, attribs, nbuffers, bufstreams, bufferMode );
14112   LEAVE_GL();
14113 }
14114
14115 static void WINAPI wine_glTransformFeedbackVaryings( GLuint program, GLsizei count, char** varyings, GLenum bufferMode ) {
14116   void (*func_glTransformFeedbackVaryings)( GLuint, GLsizei, char**, GLenum ) = extension_funcs[EXT_glTransformFeedbackVaryings];
14117   TRACE("(%d, %d, %p, %d)\n", program, count, varyings, bufferMode );
14118   ENTER_GL();
14119   func_glTransformFeedbackVaryings( program, count, varyings, bufferMode );
14120   LEAVE_GL();
14121 }
14122
14123 static void WINAPI wine_glTransformFeedbackVaryingsEXT( GLuint program, GLsizei count, char** varyings, GLenum bufferMode ) {
14124   void (*func_glTransformFeedbackVaryingsEXT)( GLuint, GLsizei, char**, GLenum ) = extension_funcs[EXT_glTransformFeedbackVaryingsEXT];
14125   TRACE("(%d, %d, %p, %d)\n", program, count, varyings, bufferMode );
14126   ENTER_GL();
14127   func_glTransformFeedbackVaryingsEXT( program, count, varyings, bufferMode );
14128   LEAVE_GL();
14129 }
14130
14131 static void WINAPI wine_glTransformFeedbackVaryingsNV( GLuint program, GLsizei count, GLint* locations, GLenum bufferMode ) {
14132   void (*func_glTransformFeedbackVaryingsNV)( GLuint, GLsizei, GLint*, GLenum ) = extension_funcs[EXT_glTransformFeedbackVaryingsNV];
14133   TRACE("(%d, %d, %p, %d)\n", program, count, locations, bufferMode );
14134   ENTER_GL();
14135   func_glTransformFeedbackVaryingsNV( program, count, locations, bufferMode );
14136   LEAVE_GL();
14137 }
14138
14139 static void WINAPI wine_glUniform1d( GLint location, GLdouble x ) {
14140   void (*func_glUniform1d)( GLint, GLdouble ) = extension_funcs[EXT_glUniform1d];
14141   TRACE("(%d, %f)\n", location, x );
14142   ENTER_GL();
14143   func_glUniform1d( location, x );
14144   LEAVE_GL();
14145 }
14146
14147 static void WINAPI wine_glUniform1dv( GLint location, GLsizei count, GLdouble* value ) {
14148   void (*func_glUniform1dv)( GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glUniform1dv];
14149   TRACE("(%d, %d, %p)\n", location, count, value );
14150   ENTER_GL();
14151   func_glUniform1dv( location, count, value );
14152   LEAVE_GL();
14153 }
14154
14155 static void WINAPI wine_glUniform1f( GLint location, GLfloat v0 ) {
14156   void (*func_glUniform1f)( GLint, GLfloat ) = extension_funcs[EXT_glUniform1f];
14157   TRACE("(%d, %f)\n", location, v0 );
14158   ENTER_GL();
14159   func_glUniform1f( location, v0 );
14160   LEAVE_GL();
14161 }
14162
14163 static void WINAPI wine_glUniform1fARB( GLint location, GLfloat v0 ) {
14164   void (*func_glUniform1fARB)( GLint, GLfloat ) = extension_funcs[EXT_glUniform1fARB];
14165   TRACE("(%d, %f)\n", location, v0 );
14166   ENTER_GL();
14167   func_glUniform1fARB( location, v0 );
14168   LEAVE_GL();
14169 }
14170
14171 static void WINAPI wine_glUniform1fv( GLint location, GLsizei count, GLfloat* value ) {
14172   void (*func_glUniform1fv)( GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glUniform1fv];
14173   TRACE("(%d, %d, %p)\n", location, count, value );
14174   ENTER_GL();
14175   func_glUniform1fv( location, count, value );
14176   LEAVE_GL();
14177 }
14178
14179 static void WINAPI wine_glUniform1fvARB( GLint location, GLsizei count, GLfloat* value ) {
14180   void (*func_glUniform1fvARB)( GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glUniform1fvARB];
14181   TRACE("(%d, %d, %p)\n", location, count, value );
14182   ENTER_GL();
14183   func_glUniform1fvARB( location, count, value );
14184   LEAVE_GL();
14185 }
14186
14187 static void WINAPI wine_glUniform1i( GLint location, GLint v0 ) {
14188   void (*func_glUniform1i)( GLint, GLint ) = extension_funcs[EXT_glUniform1i];
14189   TRACE("(%d, %d)\n", location, v0 );
14190   ENTER_GL();
14191   func_glUniform1i( location, v0 );
14192   LEAVE_GL();
14193 }
14194
14195 static void WINAPI wine_glUniform1i64NV( GLint location, INT64 x ) {
14196   void (*func_glUniform1i64NV)( GLint, INT64 ) = extension_funcs[EXT_glUniform1i64NV];
14197   TRACE("(%d, %s)\n", location, wine_dbgstr_longlong(x) );
14198   ENTER_GL();
14199   func_glUniform1i64NV( location, x );
14200   LEAVE_GL();
14201 }
14202
14203 static void WINAPI wine_glUniform1i64vNV( GLint location, GLsizei count, INT64* value ) {
14204   void (*func_glUniform1i64vNV)( GLint, GLsizei, INT64* ) = extension_funcs[EXT_glUniform1i64vNV];
14205   TRACE("(%d, %d, %p)\n", location, count, value );
14206   ENTER_GL();
14207   func_glUniform1i64vNV( location, count, value );
14208   LEAVE_GL();
14209 }
14210
14211 static void WINAPI wine_glUniform1iARB( GLint location, GLint v0 ) {
14212   void (*func_glUniform1iARB)( GLint, GLint ) = extension_funcs[EXT_glUniform1iARB];
14213   TRACE("(%d, %d)\n", location, v0 );
14214   ENTER_GL();
14215   func_glUniform1iARB( location, v0 );
14216   LEAVE_GL();
14217 }
14218
14219 static void WINAPI wine_glUniform1iv( GLint location, GLsizei count, GLint* value ) {
14220   void (*func_glUniform1iv)( GLint, GLsizei, GLint* ) = extension_funcs[EXT_glUniform1iv];
14221   TRACE("(%d, %d, %p)\n", location, count, value );
14222   ENTER_GL();
14223   func_glUniform1iv( location, count, value );
14224   LEAVE_GL();
14225 }
14226
14227 static void WINAPI wine_glUniform1ivARB( GLint location, GLsizei count, GLint* value ) {
14228   void (*func_glUniform1ivARB)( GLint, GLsizei, GLint* ) = extension_funcs[EXT_glUniform1ivARB];
14229   TRACE("(%d, %d, %p)\n", location, count, value );
14230   ENTER_GL();
14231   func_glUniform1ivARB( location, count, value );
14232   LEAVE_GL();
14233 }
14234
14235 static void WINAPI wine_glUniform1ui( GLint location, GLuint v0 ) {
14236   void (*func_glUniform1ui)( GLint, GLuint ) = extension_funcs[EXT_glUniform1ui];
14237   TRACE("(%d, %d)\n", location, v0 );
14238   ENTER_GL();
14239   func_glUniform1ui( location, v0 );
14240   LEAVE_GL();
14241 }
14242
14243 static void WINAPI wine_glUniform1ui64NV( GLint location, UINT64 x ) {
14244   void (*func_glUniform1ui64NV)( GLint, UINT64 ) = extension_funcs[EXT_glUniform1ui64NV];
14245   TRACE("(%d, %s)\n", location, wine_dbgstr_longlong(x) );
14246   ENTER_GL();
14247   func_glUniform1ui64NV( location, x );
14248   LEAVE_GL();
14249 }
14250
14251 static void WINAPI wine_glUniform1ui64vNV( GLint location, GLsizei count, UINT64* value ) {
14252   void (*func_glUniform1ui64vNV)( GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glUniform1ui64vNV];
14253   TRACE("(%d, %d, %p)\n", location, count, value );
14254   ENTER_GL();
14255   func_glUniform1ui64vNV( location, count, value );
14256   LEAVE_GL();
14257 }
14258
14259 static void WINAPI wine_glUniform1uiEXT( GLint location, GLuint v0 ) {
14260   void (*func_glUniform1uiEXT)( GLint, GLuint ) = extension_funcs[EXT_glUniform1uiEXT];
14261   TRACE("(%d, %d)\n", location, v0 );
14262   ENTER_GL();
14263   func_glUniform1uiEXT( location, v0 );
14264   LEAVE_GL();
14265 }
14266
14267 static void WINAPI wine_glUniform1uiv( GLint location, GLsizei count, GLuint* value ) {
14268   void (*func_glUniform1uiv)( GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glUniform1uiv];
14269   TRACE("(%d, %d, %p)\n", location, count, value );
14270   ENTER_GL();
14271   func_glUniform1uiv( location, count, value );
14272   LEAVE_GL();
14273 }
14274
14275 static void WINAPI wine_glUniform1uivEXT( GLint location, GLsizei count, GLuint* value ) {
14276   void (*func_glUniform1uivEXT)( GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glUniform1uivEXT];
14277   TRACE("(%d, %d, %p)\n", location, count, value );
14278   ENTER_GL();
14279   func_glUniform1uivEXT( location, count, value );
14280   LEAVE_GL();
14281 }
14282
14283 static void WINAPI wine_glUniform2d( GLint location, GLdouble x, GLdouble y ) {
14284   void (*func_glUniform2d)( GLint, GLdouble, GLdouble ) = extension_funcs[EXT_glUniform2d];
14285   TRACE("(%d, %f, %f)\n", location, x, y );
14286   ENTER_GL();
14287   func_glUniform2d( location, x, y );
14288   LEAVE_GL();
14289 }
14290
14291 static void WINAPI wine_glUniform2dv( GLint location, GLsizei count, GLdouble* value ) {
14292   void (*func_glUniform2dv)( GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glUniform2dv];
14293   TRACE("(%d, %d, %p)\n", location, count, value );
14294   ENTER_GL();
14295   func_glUniform2dv( location, count, value );
14296   LEAVE_GL();
14297 }
14298
14299 static void WINAPI wine_glUniform2f( GLint location, GLfloat v0, GLfloat v1 ) {
14300   void (*func_glUniform2f)( GLint, GLfloat, GLfloat ) = extension_funcs[EXT_glUniform2f];
14301   TRACE("(%d, %f, %f)\n", location, v0, v1 );
14302   ENTER_GL();
14303   func_glUniform2f( location, v0, v1 );
14304   LEAVE_GL();
14305 }
14306
14307 static void WINAPI wine_glUniform2fARB( GLint location, GLfloat v0, GLfloat v1 ) {
14308   void (*func_glUniform2fARB)( GLint, GLfloat, GLfloat ) = extension_funcs[EXT_glUniform2fARB];
14309   TRACE("(%d, %f, %f)\n", location, v0, v1 );
14310   ENTER_GL();
14311   func_glUniform2fARB( location, v0, v1 );
14312   LEAVE_GL();
14313 }
14314
14315 static void WINAPI wine_glUniform2fv( GLint location, GLsizei count, GLfloat* value ) {
14316   void (*func_glUniform2fv)( GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glUniform2fv];
14317   TRACE("(%d, %d, %p)\n", location, count, value );
14318   ENTER_GL();
14319   func_glUniform2fv( location, count, value );
14320   LEAVE_GL();
14321 }
14322
14323 static void WINAPI wine_glUniform2fvARB( GLint location, GLsizei count, GLfloat* value ) {
14324   void (*func_glUniform2fvARB)( GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glUniform2fvARB];
14325   TRACE("(%d, %d, %p)\n", location, count, value );
14326   ENTER_GL();
14327   func_glUniform2fvARB( location, count, value );
14328   LEAVE_GL();
14329 }
14330
14331 static void WINAPI wine_glUniform2i( GLint location, GLint v0, GLint v1 ) {
14332   void (*func_glUniform2i)( GLint, GLint, GLint ) = extension_funcs[EXT_glUniform2i];
14333   TRACE("(%d, %d, %d)\n", location, v0, v1 );
14334   ENTER_GL();
14335   func_glUniform2i( location, v0, v1 );
14336   LEAVE_GL();
14337 }
14338
14339 static void WINAPI wine_glUniform2i64NV( GLint location, INT64 x, INT64 y ) {
14340   void (*func_glUniform2i64NV)( GLint, INT64, INT64 ) = extension_funcs[EXT_glUniform2i64NV];
14341   TRACE("(%d, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
14342   ENTER_GL();
14343   func_glUniform2i64NV( location, x, y );
14344   LEAVE_GL();
14345 }
14346
14347 static void WINAPI wine_glUniform2i64vNV( GLint location, GLsizei count, INT64* value ) {
14348   void (*func_glUniform2i64vNV)( GLint, GLsizei, INT64* ) = extension_funcs[EXT_glUniform2i64vNV];
14349   TRACE("(%d, %d, %p)\n", location, count, value );
14350   ENTER_GL();
14351   func_glUniform2i64vNV( location, count, value );
14352   LEAVE_GL();
14353 }
14354
14355 static void WINAPI wine_glUniform2iARB( GLint location, GLint v0, GLint v1 ) {
14356   void (*func_glUniform2iARB)( GLint, GLint, GLint ) = extension_funcs[EXT_glUniform2iARB];
14357   TRACE("(%d, %d, %d)\n", location, v0, v1 );
14358   ENTER_GL();
14359   func_glUniform2iARB( location, v0, v1 );
14360   LEAVE_GL();
14361 }
14362
14363 static void WINAPI wine_glUniform2iv( GLint location, GLsizei count, GLint* value ) {
14364   void (*func_glUniform2iv)( GLint, GLsizei, GLint* ) = extension_funcs[EXT_glUniform2iv];
14365   TRACE("(%d, %d, %p)\n", location, count, value );
14366   ENTER_GL();
14367   func_glUniform2iv( location, count, value );
14368   LEAVE_GL();
14369 }
14370
14371 static void WINAPI wine_glUniform2ivARB( GLint location, GLsizei count, GLint* value ) {
14372   void (*func_glUniform2ivARB)( GLint, GLsizei, GLint* ) = extension_funcs[EXT_glUniform2ivARB];
14373   TRACE("(%d, %d, %p)\n", location, count, value );
14374   ENTER_GL();
14375   func_glUniform2ivARB( location, count, value );
14376   LEAVE_GL();
14377 }
14378
14379 static void WINAPI wine_glUniform2ui( GLint location, GLuint v0, GLuint v1 ) {
14380   void (*func_glUniform2ui)( GLint, GLuint, GLuint ) = extension_funcs[EXT_glUniform2ui];
14381   TRACE("(%d, %d, %d)\n", location, v0, v1 );
14382   ENTER_GL();
14383   func_glUniform2ui( location, v0, v1 );
14384   LEAVE_GL();
14385 }
14386
14387 static void WINAPI wine_glUniform2ui64NV( GLint location, UINT64 x, UINT64 y ) {
14388   void (*func_glUniform2ui64NV)( GLint, UINT64, UINT64 ) = extension_funcs[EXT_glUniform2ui64NV];
14389   TRACE("(%d, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
14390   ENTER_GL();
14391   func_glUniform2ui64NV( location, x, y );
14392   LEAVE_GL();
14393 }
14394
14395 static void WINAPI wine_glUniform2ui64vNV( GLint location, GLsizei count, UINT64* value ) {
14396   void (*func_glUniform2ui64vNV)( GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glUniform2ui64vNV];
14397   TRACE("(%d, %d, %p)\n", location, count, value );
14398   ENTER_GL();
14399   func_glUniform2ui64vNV( location, count, value );
14400   LEAVE_GL();
14401 }
14402
14403 static void WINAPI wine_glUniform2uiEXT( GLint location, GLuint v0, GLuint v1 ) {
14404   void (*func_glUniform2uiEXT)( GLint, GLuint, GLuint ) = extension_funcs[EXT_glUniform2uiEXT];
14405   TRACE("(%d, %d, %d)\n", location, v0, v1 );
14406   ENTER_GL();
14407   func_glUniform2uiEXT( location, v0, v1 );
14408   LEAVE_GL();
14409 }
14410
14411 static void WINAPI wine_glUniform2uiv( GLint location, GLsizei count, GLuint* value ) {
14412   void (*func_glUniform2uiv)( GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glUniform2uiv];
14413   TRACE("(%d, %d, %p)\n", location, count, value );
14414   ENTER_GL();
14415   func_glUniform2uiv( location, count, value );
14416   LEAVE_GL();
14417 }
14418
14419 static void WINAPI wine_glUniform2uivEXT( GLint location, GLsizei count, GLuint* value ) {
14420   void (*func_glUniform2uivEXT)( GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glUniform2uivEXT];
14421   TRACE("(%d, %d, %p)\n", location, count, value );
14422   ENTER_GL();
14423   func_glUniform2uivEXT( location, count, value );
14424   LEAVE_GL();
14425 }
14426
14427 static void WINAPI wine_glUniform3d( GLint location, GLdouble x, GLdouble y, GLdouble z ) {
14428   void (*func_glUniform3d)( GLint, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glUniform3d];
14429   TRACE("(%d, %f, %f, %f)\n", location, x, y, z );
14430   ENTER_GL();
14431   func_glUniform3d( location, x, y, z );
14432   LEAVE_GL();
14433 }
14434
14435 static void WINAPI wine_glUniform3dv( GLint location, GLsizei count, GLdouble* value ) {
14436   void (*func_glUniform3dv)( GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glUniform3dv];
14437   TRACE("(%d, %d, %p)\n", location, count, value );
14438   ENTER_GL();
14439   func_glUniform3dv( location, count, value );
14440   LEAVE_GL();
14441 }
14442
14443 static void WINAPI wine_glUniform3f( GLint location, GLfloat v0, GLfloat v1, GLfloat v2 ) {
14444   void (*func_glUniform3f)( GLint, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glUniform3f];
14445   TRACE("(%d, %f, %f, %f)\n", location, v0, v1, v2 );
14446   ENTER_GL();
14447   func_glUniform3f( location, v0, v1, v2 );
14448   LEAVE_GL();
14449 }
14450
14451 static void WINAPI wine_glUniform3fARB( GLint location, GLfloat v0, GLfloat v1, GLfloat v2 ) {
14452   void (*func_glUniform3fARB)( GLint, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glUniform3fARB];
14453   TRACE("(%d, %f, %f, %f)\n", location, v0, v1, v2 );
14454   ENTER_GL();
14455   func_glUniform3fARB( location, v0, v1, v2 );
14456   LEAVE_GL();
14457 }
14458
14459 static void WINAPI wine_glUniform3fv( GLint location, GLsizei count, GLfloat* value ) {
14460   void (*func_glUniform3fv)( GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glUniform3fv];
14461   TRACE("(%d, %d, %p)\n", location, count, value );
14462   ENTER_GL();
14463   func_glUniform3fv( location, count, value );
14464   LEAVE_GL();
14465 }
14466
14467 static void WINAPI wine_glUniform3fvARB( GLint location, GLsizei count, GLfloat* value ) {
14468   void (*func_glUniform3fvARB)( GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glUniform3fvARB];
14469   TRACE("(%d, %d, %p)\n", location, count, value );
14470   ENTER_GL();
14471   func_glUniform3fvARB( location, count, value );
14472   LEAVE_GL();
14473 }
14474
14475 static void WINAPI wine_glUniform3i( GLint location, GLint v0, GLint v1, GLint v2 ) {
14476   void (*func_glUniform3i)( GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glUniform3i];
14477   TRACE("(%d, %d, %d, %d)\n", location, v0, v1, v2 );
14478   ENTER_GL();
14479   func_glUniform3i( location, v0, v1, v2 );
14480   LEAVE_GL();
14481 }
14482
14483 static void WINAPI wine_glUniform3i64NV( GLint location, INT64 x, INT64 y, INT64 z ) {
14484   void (*func_glUniform3i64NV)( GLint, INT64, INT64, INT64 ) = extension_funcs[EXT_glUniform3i64NV];
14485   TRACE("(%d, %s, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
14486   ENTER_GL();
14487   func_glUniform3i64NV( location, x, y, z );
14488   LEAVE_GL();
14489 }
14490
14491 static void WINAPI wine_glUniform3i64vNV( GLint location, GLsizei count, INT64* value ) {
14492   void (*func_glUniform3i64vNV)( GLint, GLsizei, INT64* ) = extension_funcs[EXT_glUniform3i64vNV];
14493   TRACE("(%d, %d, %p)\n", location, count, value );
14494   ENTER_GL();
14495   func_glUniform3i64vNV( location, count, value );
14496   LEAVE_GL();
14497 }
14498
14499 static void WINAPI wine_glUniform3iARB( GLint location, GLint v0, GLint v1, GLint v2 ) {
14500   void (*func_glUniform3iARB)( GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glUniform3iARB];
14501   TRACE("(%d, %d, %d, %d)\n", location, v0, v1, v2 );
14502   ENTER_GL();
14503   func_glUniform3iARB( location, v0, v1, v2 );
14504   LEAVE_GL();
14505 }
14506
14507 static void WINAPI wine_glUniform3iv( GLint location, GLsizei count, GLint* value ) {
14508   void (*func_glUniform3iv)( GLint, GLsizei, GLint* ) = extension_funcs[EXT_glUniform3iv];
14509   TRACE("(%d, %d, %p)\n", location, count, value );
14510   ENTER_GL();
14511   func_glUniform3iv( location, count, value );
14512   LEAVE_GL();
14513 }
14514
14515 static void WINAPI wine_glUniform3ivARB( GLint location, GLsizei count, GLint* value ) {
14516   void (*func_glUniform3ivARB)( GLint, GLsizei, GLint* ) = extension_funcs[EXT_glUniform3ivARB];
14517   TRACE("(%d, %d, %p)\n", location, count, value );
14518   ENTER_GL();
14519   func_glUniform3ivARB( location, count, value );
14520   LEAVE_GL();
14521 }
14522
14523 static void WINAPI wine_glUniform3ui( GLint location, GLuint v0, GLuint v1, GLuint v2 ) {
14524   void (*func_glUniform3ui)( GLint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glUniform3ui];
14525   TRACE("(%d, %d, %d, %d)\n", location, v0, v1, v2 );
14526   ENTER_GL();
14527   func_glUniform3ui( location, v0, v1, v2 );
14528   LEAVE_GL();
14529 }
14530
14531 static void WINAPI wine_glUniform3ui64NV( GLint location, UINT64 x, UINT64 y, UINT64 z ) {
14532   void (*func_glUniform3ui64NV)( GLint, UINT64, UINT64, UINT64 ) = extension_funcs[EXT_glUniform3ui64NV];
14533   TRACE("(%d, %s, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
14534   ENTER_GL();
14535   func_glUniform3ui64NV( location, x, y, z );
14536   LEAVE_GL();
14537 }
14538
14539 static void WINAPI wine_glUniform3ui64vNV( GLint location, GLsizei count, UINT64* value ) {
14540   void (*func_glUniform3ui64vNV)( GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glUniform3ui64vNV];
14541   TRACE("(%d, %d, %p)\n", location, count, value );
14542   ENTER_GL();
14543   func_glUniform3ui64vNV( location, count, value );
14544   LEAVE_GL();
14545 }
14546
14547 static void WINAPI wine_glUniform3uiEXT( GLint location, GLuint v0, GLuint v1, GLuint v2 ) {
14548   void (*func_glUniform3uiEXT)( GLint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glUniform3uiEXT];
14549   TRACE("(%d, %d, %d, %d)\n", location, v0, v1, v2 );
14550   ENTER_GL();
14551   func_glUniform3uiEXT( location, v0, v1, v2 );
14552   LEAVE_GL();
14553 }
14554
14555 static void WINAPI wine_glUniform3uiv( GLint location, GLsizei count, GLuint* value ) {
14556   void (*func_glUniform3uiv)( GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glUniform3uiv];
14557   TRACE("(%d, %d, %p)\n", location, count, value );
14558   ENTER_GL();
14559   func_glUniform3uiv( location, count, value );
14560   LEAVE_GL();
14561 }
14562
14563 static void WINAPI wine_glUniform3uivEXT( GLint location, GLsizei count, GLuint* value ) {
14564   void (*func_glUniform3uivEXT)( GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glUniform3uivEXT];
14565   TRACE("(%d, %d, %p)\n", location, count, value );
14566   ENTER_GL();
14567   func_glUniform3uivEXT( location, count, value );
14568   LEAVE_GL();
14569 }
14570
14571 static void WINAPI wine_glUniform4d( GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
14572   void (*func_glUniform4d)( GLint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glUniform4d];
14573   TRACE("(%d, %f, %f, %f, %f)\n", location, x, y, z, w );
14574   ENTER_GL();
14575   func_glUniform4d( location, x, y, z, w );
14576   LEAVE_GL();
14577 }
14578
14579 static void WINAPI wine_glUniform4dv( GLint location, GLsizei count, GLdouble* value ) {
14580   void (*func_glUniform4dv)( GLint, GLsizei, GLdouble* ) = extension_funcs[EXT_glUniform4dv];
14581   TRACE("(%d, %d, %p)\n", location, count, value );
14582   ENTER_GL();
14583   func_glUniform4dv( location, count, value );
14584   LEAVE_GL();
14585 }
14586
14587 static void WINAPI wine_glUniform4f( GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3 ) {
14588   void (*func_glUniform4f)( GLint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glUniform4f];
14589   TRACE("(%d, %f, %f, %f, %f)\n", location, v0, v1, v2, v3 );
14590   ENTER_GL();
14591   func_glUniform4f( location, v0, v1, v2, v3 );
14592   LEAVE_GL();
14593 }
14594
14595 static void WINAPI wine_glUniform4fARB( GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3 ) {
14596   void (*func_glUniform4fARB)( GLint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glUniform4fARB];
14597   TRACE("(%d, %f, %f, %f, %f)\n", location, v0, v1, v2, v3 );
14598   ENTER_GL();
14599   func_glUniform4fARB( location, v0, v1, v2, v3 );
14600   LEAVE_GL();
14601 }
14602
14603 static void WINAPI wine_glUniform4fv( GLint location, GLsizei count, GLfloat* value ) {
14604   void (*func_glUniform4fv)( GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glUniform4fv];
14605   TRACE("(%d, %d, %p)\n", location, count, value );
14606   ENTER_GL();
14607   func_glUniform4fv( location, count, value );
14608   LEAVE_GL();
14609 }
14610
14611 static void WINAPI wine_glUniform4fvARB( GLint location, GLsizei count, GLfloat* value ) {
14612   void (*func_glUniform4fvARB)( GLint, GLsizei, GLfloat* ) = extension_funcs[EXT_glUniform4fvARB];
14613   TRACE("(%d, %d, %p)\n", location, count, value );
14614   ENTER_GL();
14615   func_glUniform4fvARB( location, count, value );
14616   LEAVE_GL();
14617 }
14618
14619 static void WINAPI wine_glUniform4i( GLint location, GLint v0, GLint v1, GLint v2, GLint v3 ) {
14620   void (*func_glUniform4i)( GLint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glUniform4i];
14621   TRACE("(%d, %d, %d, %d, %d)\n", location, v0, v1, v2, v3 );
14622   ENTER_GL();
14623   func_glUniform4i( location, v0, v1, v2, v3 );
14624   LEAVE_GL();
14625 }
14626
14627 static void WINAPI wine_glUniform4i64NV( GLint location, INT64 x, INT64 y, INT64 z, INT64 w ) {
14628   void (*func_glUniform4i64NV)( GLint, INT64, INT64, INT64, INT64 ) = extension_funcs[EXT_glUniform4i64NV];
14629   TRACE("(%d, %s, %s, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
14630   ENTER_GL();
14631   func_glUniform4i64NV( location, x, y, z, w );
14632   LEAVE_GL();
14633 }
14634
14635 static void WINAPI wine_glUniform4i64vNV( GLint location, GLsizei count, INT64* value ) {
14636   void (*func_glUniform4i64vNV)( GLint, GLsizei, INT64* ) = extension_funcs[EXT_glUniform4i64vNV];
14637   TRACE("(%d, %d, %p)\n", location, count, value );
14638   ENTER_GL();
14639   func_glUniform4i64vNV( location, count, value );
14640   LEAVE_GL();
14641 }
14642
14643 static void WINAPI wine_glUniform4iARB( GLint location, GLint v0, GLint v1, GLint v2, GLint v3 ) {
14644   void (*func_glUniform4iARB)( GLint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glUniform4iARB];
14645   TRACE("(%d, %d, %d, %d, %d)\n", location, v0, v1, v2, v3 );
14646   ENTER_GL();
14647   func_glUniform4iARB( location, v0, v1, v2, v3 );
14648   LEAVE_GL();
14649 }
14650
14651 static void WINAPI wine_glUniform4iv( GLint location, GLsizei count, GLint* value ) {
14652   void (*func_glUniform4iv)( GLint, GLsizei, GLint* ) = extension_funcs[EXT_glUniform4iv];
14653   TRACE("(%d, %d, %p)\n", location, count, value );
14654   ENTER_GL();
14655   func_glUniform4iv( location, count, value );
14656   LEAVE_GL();
14657 }
14658
14659 static void WINAPI wine_glUniform4ivARB( GLint location, GLsizei count, GLint* value ) {
14660   void (*func_glUniform4ivARB)( GLint, GLsizei, GLint* ) = extension_funcs[EXT_glUniform4ivARB];
14661   TRACE("(%d, %d, %p)\n", location, count, value );
14662   ENTER_GL();
14663   func_glUniform4ivARB( location, count, value );
14664   LEAVE_GL();
14665 }
14666
14667 static void WINAPI wine_glUniform4ui( GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) {
14668   void (*func_glUniform4ui)( GLint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glUniform4ui];
14669   TRACE("(%d, %d, %d, %d, %d)\n", location, v0, v1, v2, v3 );
14670   ENTER_GL();
14671   func_glUniform4ui( location, v0, v1, v2, v3 );
14672   LEAVE_GL();
14673 }
14674
14675 static void WINAPI wine_glUniform4ui64NV( GLint location, UINT64 x, UINT64 y, UINT64 z, UINT64 w ) {
14676   void (*func_glUniform4ui64NV)( GLint, UINT64, UINT64, UINT64, UINT64 ) = extension_funcs[EXT_glUniform4ui64NV];
14677   TRACE("(%d, %s, %s, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
14678   ENTER_GL();
14679   func_glUniform4ui64NV( location, x, y, z, w );
14680   LEAVE_GL();
14681 }
14682
14683 static void WINAPI wine_glUniform4ui64vNV( GLint location, GLsizei count, UINT64* value ) {
14684   void (*func_glUniform4ui64vNV)( GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glUniform4ui64vNV];
14685   TRACE("(%d, %d, %p)\n", location, count, value );
14686   ENTER_GL();
14687   func_glUniform4ui64vNV( location, count, value );
14688   LEAVE_GL();
14689 }
14690
14691 static void WINAPI wine_glUniform4uiEXT( GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) {
14692   void (*func_glUniform4uiEXT)( GLint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glUniform4uiEXT];
14693   TRACE("(%d, %d, %d, %d, %d)\n", location, v0, v1, v2, v3 );
14694   ENTER_GL();
14695   func_glUniform4uiEXT( location, v0, v1, v2, v3 );
14696   LEAVE_GL();
14697 }
14698
14699 static void WINAPI wine_glUniform4uiv( GLint location, GLsizei count, GLuint* value ) {
14700   void (*func_glUniform4uiv)( GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glUniform4uiv];
14701   TRACE("(%d, %d, %p)\n", location, count, value );
14702   ENTER_GL();
14703   func_glUniform4uiv( location, count, value );
14704   LEAVE_GL();
14705 }
14706
14707 static void WINAPI wine_glUniform4uivEXT( GLint location, GLsizei count, GLuint* value ) {
14708   void (*func_glUniform4uivEXT)( GLint, GLsizei, GLuint* ) = extension_funcs[EXT_glUniform4uivEXT];
14709   TRACE("(%d, %d, %p)\n", location, count, value );
14710   ENTER_GL();
14711   func_glUniform4uivEXT( location, count, value );
14712   LEAVE_GL();
14713 }
14714
14715 static void WINAPI wine_glUniformBlockBinding( GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding ) {
14716   void (*func_glUniformBlockBinding)( GLuint, GLuint, GLuint ) = extension_funcs[EXT_glUniformBlockBinding];
14717   TRACE("(%d, %d, %d)\n", program, uniformBlockIndex, uniformBlockBinding );
14718   ENTER_GL();
14719   func_glUniformBlockBinding( program, uniformBlockIndex, uniformBlockBinding );
14720   LEAVE_GL();
14721 }
14722
14723 static void WINAPI wine_glUniformBufferEXT( GLuint program, GLint location, GLuint buffer ) {
14724   void (*func_glUniformBufferEXT)( GLuint, GLint, GLuint ) = extension_funcs[EXT_glUniformBufferEXT];
14725   TRACE("(%d, %d, %d)\n", program, location, buffer );
14726   ENTER_GL();
14727   func_glUniformBufferEXT( program, location, buffer );
14728   LEAVE_GL();
14729 }
14730
14731 static void WINAPI wine_glUniformMatrix2dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14732   void (*func_glUniformMatrix2dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix2dv];
14733   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14734   ENTER_GL();
14735   func_glUniformMatrix2dv( location, count, transpose, value );
14736   LEAVE_GL();
14737 }
14738
14739 static void WINAPI wine_glUniformMatrix2fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14740   void (*func_glUniformMatrix2fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix2fv];
14741   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14742   ENTER_GL();
14743   func_glUniformMatrix2fv( location, count, transpose, value );
14744   LEAVE_GL();
14745 }
14746
14747 static void WINAPI wine_glUniformMatrix2fvARB( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14748   void (*func_glUniformMatrix2fvARB)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix2fvARB];
14749   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14750   ENTER_GL();
14751   func_glUniformMatrix2fvARB( location, count, transpose, value );
14752   LEAVE_GL();
14753 }
14754
14755 static void WINAPI wine_glUniformMatrix2x3dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14756   void (*func_glUniformMatrix2x3dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix2x3dv];
14757   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14758   ENTER_GL();
14759   func_glUniformMatrix2x3dv( location, count, transpose, value );
14760   LEAVE_GL();
14761 }
14762
14763 static void WINAPI wine_glUniformMatrix2x3fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14764   void (*func_glUniformMatrix2x3fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix2x3fv];
14765   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14766   ENTER_GL();
14767   func_glUniformMatrix2x3fv( location, count, transpose, value );
14768   LEAVE_GL();
14769 }
14770
14771 static void WINAPI wine_glUniformMatrix2x4dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14772   void (*func_glUniformMatrix2x4dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix2x4dv];
14773   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14774   ENTER_GL();
14775   func_glUniformMatrix2x4dv( location, count, transpose, value );
14776   LEAVE_GL();
14777 }
14778
14779 static void WINAPI wine_glUniformMatrix2x4fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14780   void (*func_glUniformMatrix2x4fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix2x4fv];
14781   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14782   ENTER_GL();
14783   func_glUniformMatrix2x4fv( location, count, transpose, value );
14784   LEAVE_GL();
14785 }
14786
14787 static void WINAPI wine_glUniformMatrix3dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14788   void (*func_glUniformMatrix3dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix3dv];
14789   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14790   ENTER_GL();
14791   func_glUniformMatrix3dv( location, count, transpose, value );
14792   LEAVE_GL();
14793 }
14794
14795 static void WINAPI wine_glUniformMatrix3fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14796   void (*func_glUniformMatrix3fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix3fv];
14797   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14798   ENTER_GL();
14799   func_glUniformMatrix3fv( location, count, transpose, value );
14800   LEAVE_GL();
14801 }
14802
14803 static void WINAPI wine_glUniformMatrix3fvARB( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14804   void (*func_glUniformMatrix3fvARB)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix3fvARB];
14805   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14806   ENTER_GL();
14807   func_glUniformMatrix3fvARB( location, count, transpose, value );
14808   LEAVE_GL();
14809 }
14810
14811 static void WINAPI wine_glUniformMatrix3x2dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14812   void (*func_glUniformMatrix3x2dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix3x2dv];
14813   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14814   ENTER_GL();
14815   func_glUniformMatrix3x2dv( location, count, transpose, value );
14816   LEAVE_GL();
14817 }
14818
14819 static void WINAPI wine_glUniformMatrix3x2fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14820   void (*func_glUniformMatrix3x2fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix3x2fv];
14821   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14822   ENTER_GL();
14823   func_glUniformMatrix3x2fv( location, count, transpose, value );
14824   LEAVE_GL();
14825 }
14826
14827 static void WINAPI wine_glUniformMatrix3x4dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14828   void (*func_glUniformMatrix3x4dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix3x4dv];
14829   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14830   ENTER_GL();
14831   func_glUniformMatrix3x4dv( location, count, transpose, value );
14832   LEAVE_GL();
14833 }
14834
14835 static void WINAPI wine_glUniformMatrix3x4fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14836   void (*func_glUniformMatrix3x4fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix3x4fv];
14837   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14838   ENTER_GL();
14839   func_glUniformMatrix3x4fv( location, count, transpose, value );
14840   LEAVE_GL();
14841 }
14842
14843 static void WINAPI wine_glUniformMatrix4dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14844   void (*func_glUniformMatrix4dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix4dv];
14845   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14846   ENTER_GL();
14847   func_glUniformMatrix4dv( location, count, transpose, value );
14848   LEAVE_GL();
14849 }
14850
14851 static void WINAPI wine_glUniformMatrix4fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14852   void (*func_glUniformMatrix4fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix4fv];
14853   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14854   ENTER_GL();
14855   func_glUniformMatrix4fv( location, count, transpose, value );
14856   LEAVE_GL();
14857 }
14858
14859 static void WINAPI wine_glUniformMatrix4fvARB( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14860   void (*func_glUniformMatrix4fvARB)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix4fvARB];
14861   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14862   ENTER_GL();
14863   func_glUniformMatrix4fvARB( location, count, transpose, value );
14864   LEAVE_GL();
14865 }
14866
14867 static void WINAPI wine_glUniformMatrix4x2dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14868   void (*func_glUniformMatrix4x2dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix4x2dv];
14869   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14870   ENTER_GL();
14871   func_glUniformMatrix4x2dv( location, count, transpose, value );
14872   LEAVE_GL();
14873 }
14874
14875 static void WINAPI wine_glUniformMatrix4x2fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14876   void (*func_glUniformMatrix4x2fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix4x2fv];
14877   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14878   ENTER_GL();
14879   func_glUniformMatrix4x2fv( location, count, transpose, value );
14880   LEAVE_GL();
14881 }
14882
14883 static void WINAPI wine_glUniformMatrix4x3dv( GLint location, GLsizei count, GLboolean transpose, GLdouble* value ) {
14884   void (*func_glUniformMatrix4x3dv)( GLint, GLsizei, GLboolean, GLdouble* ) = extension_funcs[EXT_glUniformMatrix4x3dv];
14885   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14886   ENTER_GL();
14887   func_glUniformMatrix4x3dv( location, count, transpose, value );
14888   LEAVE_GL();
14889 }
14890
14891 static void WINAPI wine_glUniformMatrix4x3fv( GLint location, GLsizei count, GLboolean transpose, GLfloat* value ) {
14892   void (*func_glUniformMatrix4x3fv)( GLint, GLsizei, GLboolean, GLfloat* ) = extension_funcs[EXT_glUniformMatrix4x3fv];
14893   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
14894   ENTER_GL();
14895   func_glUniformMatrix4x3fv( location, count, transpose, value );
14896   LEAVE_GL();
14897 }
14898
14899 static void WINAPI wine_glUniformSubroutinesuiv( GLenum shadertype, GLsizei count, GLuint* indices ) {
14900   void (*func_glUniformSubroutinesuiv)( GLenum, GLsizei, GLuint* ) = extension_funcs[EXT_glUniformSubroutinesuiv];
14901   TRACE("(%d, %d, %p)\n", shadertype, count, indices );
14902   ENTER_GL();
14903   func_glUniformSubroutinesuiv( shadertype, count, indices );
14904   LEAVE_GL();
14905 }
14906
14907 static void WINAPI wine_glUniformui64NV( GLint location, UINT64 value ) {
14908   void (*func_glUniformui64NV)( GLint, UINT64 ) = extension_funcs[EXT_glUniformui64NV];
14909   TRACE("(%d, %s)\n", location, wine_dbgstr_longlong(value) );
14910   ENTER_GL();
14911   func_glUniformui64NV( location, value );
14912   LEAVE_GL();
14913 }
14914
14915 static void WINAPI wine_glUniformui64vNV( GLint location, GLsizei count, UINT64* value ) {
14916   void (*func_glUniformui64vNV)( GLint, GLsizei, UINT64* ) = extension_funcs[EXT_glUniformui64vNV];
14917   TRACE("(%d, %d, %p)\n", location, count, value );
14918   ENTER_GL();
14919   func_glUniformui64vNV( location, count, value );
14920   LEAVE_GL();
14921 }
14922
14923 static void WINAPI wine_glUnlockArraysEXT( void ) {
14924   void (*func_glUnlockArraysEXT)( void ) = extension_funcs[EXT_glUnlockArraysEXT];
14925   TRACE("()\n");
14926   ENTER_GL();
14927   func_glUnlockArraysEXT( );
14928   LEAVE_GL();
14929 }
14930
14931 static GLboolean WINAPI wine_glUnmapBuffer( GLenum target ) {
14932   GLboolean ret_value;
14933   GLboolean (*func_glUnmapBuffer)( GLenum ) = extension_funcs[EXT_glUnmapBuffer];
14934   TRACE("(%d)\n", target );
14935   ENTER_GL();
14936   ret_value = func_glUnmapBuffer( target );
14937   LEAVE_GL();
14938   return ret_value;
14939 }
14940
14941 static GLboolean WINAPI wine_glUnmapBufferARB( GLenum target ) {
14942   GLboolean ret_value;
14943   GLboolean (*func_glUnmapBufferARB)( GLenum ) = extension_funcs[EXT_glUnmapBufferARB];
14944   TRACE("(%d)\n", target );
14945   ENTER_GL();
14946   ret_value = func_glUnmapBufferARB( target );
14947   LEAVE_GL();
14948   return ret_value;
14949 }
14950
14951 static GLboolean WINAPI wine_glUnmapNamedBufferEXT( GLuint buffer ) {
14952   GLboolean ret_value;
14953   GLboolean (*func_glUnmapNamedBufferEXT)( GLuint ) = extension_funcs[EXT_glUnmapNamedBufferEXT];
14954   TRACE("(%d)\n", buffer );
14955   ENTER_GL();
14956   ret_value = func_glUnmapNamedBufferEXT( buffer );
14957   LEAVE_GL();
14958   return ret_value;
14959 }
14960
14961 static void WINAPI wine_glUnmapObjectBufferATI( GLuint buffer ) {
14962   void (*func_glUnmapObjectBufferATI)( GLuint ) = extension_funcs[EXT_glUnmapObjectBufferATI];
14963   TRACE("(%d)\n", buffer );
14964   ENTER_GL();
14965   func_glUnmapObjectBufferATI( buffer );
14966   LEAVE_GL();
14967 }
14968
14969 static void WINAPI wine_glUpdateObjectBufferATI( GLuint buffer, GLuint offset, GLsizei size, GLvoid* pointer, GLenum preserve ) {
14970   void (*func_glUpdateObjectBufferATI)( GLuint, GLuint, GLsizei, GLvoid*, GLenum ) = extension_funcs[EXT_glUpdateObjectBufferATI];
14971   TRACE("(%d, %d, %d, %p, %d)\n", buffer, offset, size, pointer, preserve );
14972   ENTER_GL();
14973   func_glUpdateObjectBufferATI( buffer, offset, size, pointer, preserve );
14974   LEAVE_GL();
14975 }
14976
14977 static void WINAPI wine_glUseProgram( GLuint program ) {
14978   void (*func_glUseProgram)( GLuint ) = extension_funcs[EXT_glUseProgram];
14979   TRACE("(%d)\n", program );
14980   ENTER_GL();
14981   func_glUseProgram( program );
14982   LEAVE_GL();
14983 }
14984
14985 static void WINAPI wine_glUseProgramObjectARB( unsigned int programObj ) {
14986   void (*func_glUseProgramObjectARB)( unsigned int ) = extension_funcs[EXT_glUseProgramObjectARB];
14987   TRACE("(%d)\n", programObj );
14988   ENTER_GL();
14989   func_glUseProgramObjectARB( programObj );
14990   LEAVE_GL();
14991 }
14992
14993 static void WINAPI wine_glUseProgramStages( GLuint pipeline, GLbitfield stages, GLuint program ) {
14994   void (*func_glUseProgramStages)( GLuint, GLbitfield, GLuint ) = extension_funcs[EXT_glUseProgramStages];
14995   TRACE("(%d, %d, %d)\n", pipeline, stages, program );
14996   ENTER_GL();
14997   func_glUseProgramStages( pipeline, stages, program );
14998   LEAVE_GL();
14999 }
15000
15001 static void WINAPI wine_glUseShaderProgramEXT( GLenum type, GLuint program ) {
15002   void (*func_glUseShaderProgramEXT)( GLenum, GLuint ) = extension_funcs[EXT_glUseShaderProgramEXT];
15003   TRACE("(%d, %d)\n", type, program );
15004   ENTER_GL();
15005   func_glUseShaderProgramEXT( type, program );
15006   LEAVE_GL();
15007 }
15008
15009 static void WINAPI wine_glVDPAUFiniNV( void ) {
15010   void (*func_glVDPAUFiniNV)( void ) = extension_funcs[EXT_glVDPAUFiniNV];
15011   TRACE("()\n");
15012   ENTER_GL();
15013   func_glVDPAUFiniNV( );
15014   LEAVE_GL();
15015 }
15016
15017 static void WINAPI wine_glVDPAUGetSurfaceivNV( INT_PTR surface, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values ) {
15018   void (*func_glVDPAUGetSurfaceivNV)( INT_PTR, GLenum, GLsizei, GLsizei*, GLint* ) = extension_funcs[EXT_glVDPAUGetSurfaceivNV];
15019   TRACE("(%ld, %d, %d, %p, %p)\n", surface, pname, bufSize, length, values );
15020   ENTER_GL();
15021   func_glVDPAUGetSurfaceivNV( surface, pname, bufSize, length, values );
15022   LEAVE_GL();
15023 }
15024
15025 static void WINAPI wine_glVDPAUInitNV( GLvoid* vdpDevice, GLvoid* getProcAddress ) {
15026   void (*func_glVDPAUInitNV)( GLvoid*, GLvoid* ) = extension_funcs[EXT_glVDPAUInitNV];
15027   TRACE("(%p, %p)\n", vdpDevice, getProcAddress );
15028   ENTER_GL();
15029   func_glVDPAUInitNV( vdpDevice, getProcAddress );
15030   LEAVE_GL();
15031 }
15032
15033 static void WINAPI wine_glVDPAUIsSurfaceNV( INT_PTR surface ) {
15034   void (*func_glVDPAUIsSurfaceNV)( INT_PTR ) = extension_funcs[EXT_glVDPAUIsSurfaceNV];
15035   TRACE("(%ld)\n", surface );
15036   ENTER_GL();
15037   func_glVDPAUIsSurfaceNV( surface );
15038   LEAVE_GL();
15039 }
15040
15041 static void WINAPI wine_glVDPAUMapSurfacesNV( GLsizei numSurfaces, INT_PTR* surfaces ) {
15042   void (*func_glVDPAUMapSurfacesNV)( GLsizei, INT_PTR* ) = extension_funcs[EXT_glVDPAUMapSurfacesNV];
15043   TRACE("(%d, %p)\n", numSurfaces, surfaces );
15044   ENTER_GL();
15045   func_glVDPAUMapSurfacesNV( numSurfaces, surfaces );
15046   LEAVE_GL();
15047 }
15048
15049 static INT_PTR WINAPI wine_glVDPAURegisterOutputSurfaceNV( GLvoid* vdpSurface, GLenum target, GLsizei numTextureNames, GLuint* textureNames ) {
15050   INT_PTR ret_value;
15051   INT_PTR (*func_glVDPAURegisterOutputSurfaceNV)( GLvoid*, GLenum, GLsizei, GLuint* ) = extension_funcs[EXT_glVDPAURegisterOutputSurfaceNV];
15052   TRACE("(%p, %d, %d, %p)\n", vdpSurface, target, numTextureNames, textureNames );
15053   ENTER_GL();
15054   ret_value = func_glVDPAURegisterOutputSurfaceNV( vdpSurface, target, numTextureNames, textureNames );
15055   LEAVE_GL();
15056   return ret_value;
15057 }
15058
15059 static INT_PTR WINAPI wine_glVDPAURegisterVideoSurfaceNV( GLvoid* vdpSurface, GLenum target, GLsizei numTextureNames, GLuint* textureNames ) {
15060   INT_PTR ret_value;
15061   INT_PTR (*func_glVDPAURegisterVideoSurfaceNV)( GLvoid*, GLenum, GLsizei, GLuint* ) = extension_funcs[EXT_glVDPAURegisterVideoSurfaceNV];
15062   TRACE("(%p, %d, %d, %p)\n", vdpSurface, target, numTextureNames, textureNames );
15063   ENTER_GL();
15064   ret_value = func_glVDPAURegisterVideoSurfaceNV( vdpSurface, target, numTextureNames, textureNames );
15065   LEAVE_GL();
15066   return ret_value;
15067 }
15068
15069 static void WINAPI wine_glVDPAUSurfaceAccessNV( INT_PTR surface, GLenum access ) {
15070   void (*func_glVDPAUSurfaceAccessNV)( INT_PTR, GLenum ) = extension_funcs[EXT_glVDPAUSurfaceAccessNV];
15071   TRACE("(%ld, %d)\n", surface, access );
15072   ENTER_GL();
15073   func_glVDPAUSurfaceAccessNV( surface, access );
15074   LEAVE_GL();
15075 }
15076
15077 static void WINAPI wine_glVDPAUUnmapSurfacesNV( GLsizei numSurface, INT_PTR* surfaces ) {
15078   void (*func_glVDPAUUnmapSurfacesNV)( GLsizei, INT_PTR* ) = extension_funcs[EXT_glVDPAUUnmapSurfacesNV];
15079   TRACE("(%d, %p)\n", numSurface, surfaces );
15080   ENTER_GL();
15081   func_glVDPAUUnmapSurfacesNV( numSurface, surfaces );
15082   LEAVE_GL();
15083 }
15084
15085 static void WINAPI wine_glVDPAUUnregisterSurfaceNV( INT_PTR surface ) {
15086   void (*func_glVDPAUUnregisterSurfaceNV)( INT_PTR ) = extension_funcs[EXT_glVDPAUUnregisterSurfaceNV];
15087   TRACE("(%ld)\n", surface );
15088   ENTER_GL();
15089   func_glVDPAUUnregisterSurfaceNV( surface );
15090   LEAVE_GL();
15091 }
15092
15093 static void WINAPI wine_glValidateProgram( GLuint program ) {
15094   void (*func_glValidateProgram)( GLuint ) = extension_funcs[EXT_glValidateProgram];
15095   TRACE("(%d)\n", program );
15096   ENTER_GL();
15097   func_glValidateProgram( program );
15098   LEAVE_GL();
15099 }
15100
15101 static void WINAPI wine_glValidateProgramARB( unsigned int programObj ) {
15102   void (*func_glValidateProgramARB)( unsigned int ) = extension_funcs[EXT_glValidateProgramARB];
15103   TRACE("(%d)\n", programObj );
15104   ENTER_GL();
15105   func_glValidateProgramARB( programObj );
15106   LEAVE_GL();
15107 }
15108
15109 static void WINAPI wine_glValidateProgramPipeline( GLuint pipeline ) {
15110   void (*func_glValidateProgramPipeline)( GLuint ) = extension_funcs[EXT_glValidateProgramPipeline];
15111   TRACE("(%d)\n", pipeline );
15112   ENTER_GL();
15113   func_glValidateProgramPipeline( pipeline );
15114   LEAVE_GL();
15115 }
15116
15117 static void WINAPI wine_glVariantArrayObjectATI( GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset ) {
15118   void (*func_glVariantArrayObjectATI)( GLuint, GLenum, GLsizei, GLuint, GLuint ) = extension_funcs[EXT_glVariantArrayObjectATI];
15119   TRACE("(%d, %d, %d, %d, %d)\n", id, type, stride, buffer, offset );
15120   ENTER_GL();
15121   func_glVariantArrayObjectATI( id, type, stride, buffer, offset );
15122   LEAVE_GL();
15123 }
15124
15125 static void WINAPI wine_glVariantPointerEXT( GLuint id, GLenum type, GLuint stride, GLvoid* addr ) {
15126   void (*func_glVariantPointerEXT)( GLuint, GLenum, GLuint, GLvoid* ) = extension_funcs[EXT_glVariantPointerEXT];
15127   TRACE("(%d, %d, %d, %p)\n", id, type, stride, addr );
15128   ENTER_GL();
15129   func_glVariantPointerEXT( id, type, stride, addr );
15130   LEAVE_GL();
15131 }
15132
15133 static void WINAPI wine_glVariantbvEXT( GLuint id, GLbyte* addr ) {
15134   void (*func_glVariantbvEXT)( GLuint, GLbyte* ) = extension_funcs[EXT_glVariantbvEXT];
15135   TRACE("(%d, %p)\n", id, addr );
15136   ENTER_GL();
15137   func_glVariantbvEXT( id, addr );
15138   LEAVE_GL();
15139 }
15140
15141 static void WINAPI wine_glVariantdvEXT( GLuint id, GLdouble* addr ) {
15142   void (*func_glVariantdvEXT)( GLuint, GLdouble* ) = extension_funcs[EXT_glVariantdvEXT];
15143   TRACE("(%d, %p)\n", id, addr );
15144   ENTER_GL();
15145   func_glVariantdvEXT( id, addr );
15146   LEAVE_GL();
15147 }
15148
15149 static void WINAPI wine_glVariantfvEXT( GLuint id, GLfloat* addr ) {
15150   void (*func_glVariantfvEXT)( GLuint, GLfloat* ) = extension_funcs[EXT_glVariantfvEXT];
15151   TRACE("(%d, %p)\n", id, addr );
15152   ENTER_GL();
15153   func_glVariantfvEXT( id, addr );
15154   LEAVE_GL();
15155 }
15156
15157 static void WINAPI wine_glVariantivEXT( GLuint id, GLint* addr ) {
15158   void (*func_glVariantivEXT)( GLuint, GLint* ) = extension_funcs[EXT_glVariantivEXT];
15159   TRACE("(%d, %p)\n", id, addr );
15160   ENTER_GL();
15161   func_glVariantivEXT( id, addr );
15162   LEAVE_GL();
15163 }
15164
15165 static void WINAPI wine_glVariantsvEXT( GLuint id, GLshort* addr ) {
15166   void (*func_glVariantsvEXT)( GLuint, GLshort* ) = extension_funcs[EXT_glVariantsvEXT];
15167   TRACE("(%d, %p)\n", id, addr );
15168   ENTER_GL();
15169   func_glVariantsvEXT( id, addr );
15170   LEAVE_GL();
15171 }
15172
15173 static void WINAPI wine_glVariantubvEXT( GLuint id, GLubyte* addr ) {
15174   void (*func_glVariantubvEXT)( GLuint, GLubyte* ) = extension_funcs[EXT_glVariantubvEXT];
15175   TRACE("(%d, %p)\n", id, addr );
15176   ENTER_GL();
15177   func_glVariantubvEXT( id, addr );
15178   LEAVE_GL();
15179 }
15180
15181 static void WINAPI wine_glVariantuivEXT( GLuint id, GLuint* addr ) {
15182   void (*func_glVariantuivEXT)( GLuint, GLuint* ) = extension_funcs[EXT_glVariantuivEXT];
15183   TRACE("(%d, %p)\n", id, addr );
15184   ENTER_GL();
15185   func_glVariantuivEXT( id, addr );
15186   LEAVE_GL();
15187 }
15188
15189 static void WINAPI wine_glVariantusvEXT( GLuint id, GLushort* addr ) {
15190   void (*func_glVariantusvEXT)( GLuint, GLushort* ) = extension_funcs[EXT_glVariantusvEXT];
15191   TRACE("(%d, %p)\n", id, addr );
15192   ENTER_GL();
15193   func_glVariantusvEXT( id, addr );
15194   LEAVE_GL();
15195 }
15196
15197 static void WINAPI wine_glVertex2hNV( unsigned short x, unsigned short y ) {
15198   void (*func_glVertex2hNV)( unsigned short, unsigned short ) = extension_funcs[EXT_glVertex2hNV];
15199   TRACE("(%d, %d)\n", x, y );
15200   ENTER_GL();
15201   func_glVertex2hNV( x, y );
15202   LEAVE_GL();
15203 }
15204
15205 static void WINAPI wine_glVertex2hvNV( unsigned short* v ) {
15206   void (*func_glVertex2hvNV)( unsigned short* ) = extension_funcs[EXT_glVertex2hvNV];
15207   TRACE("(%p)\n", v );
15208   ENTER_GL();
15209   func_glVertex2hvNV( v );
15210   LEAVE_GL();
15211 }
15212
15213 static void WINAPI wine_glVertex3hNV( unsigned short x, unsigned short y, unsigned short z ) {
15214   void (*func_glVertex3hNV)( unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glVertex3hNV];
15215   TRACE("(%d, %d, %d)\n", x, y, z );
15216   ENTER_GL();
15217   func_glVertex3hNV( x, y, z );
15218   LEAVE_GL();
15219 }
15220
15221 static void WINAPI wine_glVertex3hvNV( unsigned short* v ) {
15222   void (*func_glVertex3hvNV)( unsigned short* ) = extension_funcs[EXT_glVertex3hvNV];
15223   TRACE("(%p)\n", v );
15224   ENTER_GL();
15225   func_glVertex3hvNV( v );
15226   LEAVE_GL();
15227 }
15228
15229 static void WINAPI wine_glVertex4hNV( unsigned short x, unsigned short y, unsigned short z, unsigned short w ) {
15230   void (*func_glVertex4hNV)( unsigned short, unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glVertex4hNV];
15231   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
15232   ENTER_GL();
15233   func_glVertex4hNV( x, y, z, w );
15234   LEAVE_GL();
15235 }
15236
15237 static void WINAPI wine_glVertex4hvNV( unsigned short* v ) {
15238   void (*func_glVertex4hvNV)( unsigned short* ) = extension_funcs[EXT_glVertex4hvNV];
15239   TRACE("(%p)\n", v );
15240   ENTER_GL();
15241   func_glVertex4hvNV( v );
15242   LEAVE_GL();
15243 }
15244
15245 static void WINAPI wine_glVertexArrayParameteriAPPLE( GLenum pname, GLint param ) {
15246   void (*func_glVertexArrayParameteriAPPLE)( GLenum, GLint ) = extension_funcs[EXT_glVertexArrayParameteriAPPLE];
15247   TRACE("(%d, %d)\n", pname, param );
15248   ENTER_GL();
15249   func_glVertexArrayParameteriAPPLE( pname, param );
15250   LEAVE_GL();
15251 }
15252
15253 static void WINAPI wine_glVertexArrayRangeAPPLE( GLsizei length, GLvoid* pointer ) {
15254   void (*func_glVertexArrayRangeAPPLE)( GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexArrayRangeAPPLE];
15255   TRACE("(%d, %p)\n", length, pointer );
15256   ENTER_GL();
15257   func_glVertexArrayRangeAPPLE( length, pointer );
15258   LEAVE_GL();
15259 }
15260
15261 static void WINAPI wine_glVertexArrayRangeNV( GLsizei length, GLvoid* pointer ) {
15262   void (*func_glVertexArrayRangeNV)( GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexArrayRangeNV];
15263   TRACE("(%d, %p)\n", length, pointer );
15264   ENTER_GL();
15265   func_glVertexArrayRangeNV( length, pointer );
15266   LEAVE_GL();
15267 }
15268
15269 static void WINAPI wine_glVertexArrayVertexAttribLOffsetEXT( GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, INT_PTR offset ) {
15270   void (*func_glVertexArrayVertexAttribLOffsetEXT)( GLuint, GLuint, GLuint, GLint, GLenum, GLsizei, INT_PTR ) = extension_funcs[EXT_glVertexArrayVertexAttribLOffsetEXT];
15271   TRACE("(%d, %d, %d, %d, %d, %d, %ld)\n", vaobj, buffer, index, size, type, stride, offset );
15272   ENTER_GL();
15273   func_glVertexArrayVertexAttribLOffsetEXT( vaobj, buffer, index, size, type, stride, offset );
15274   LEAVE_GL();
15275 }
15276
15277 static void WINAPI wine_glVertexAttrib1d( GLuint index, GLdouble x ) {
15278   void (*func_glVertexAttrib1d)( GLuint, GLdouble ) = extension_funcs[EXT_glVertexAttrib1d];
15279   TRACE("(%d, %f)\n", index, x );
15280   ENTER_GL();
15281   func_glVertexAttrib1d( index, x );
15282   LEAVE_GL();
15283 }
15284
15285 static void WINAPI wine_glVertexAttrib1dARB( GLuint index, GLdouble x ) {
15286   void (*func_glVertexAttrib1dARB)( GLuint, GLdouble ) = extension_funcs[EXT_glVertexAttrib1dARB];
15287   TRACE("(%d, %f)\n", index, x );
15288   ENTER_GL();
15289   func_glVertexAttrib1dARB( index, x );
15290   LEAVE_GL();
15291 }
15292
15293 static void WINAPI wine_glVertexAttrib1dNV( GLuint index, GLdouble x ) {
15294   void (*func_glVertexAttrib1dNV)( GLuint, GLdouble ) = extension_funcs[EXT_glVertexAttrib1dNV];
15295   TRACE("(%d, %f)\n", index, x );
15296   ENTER_GL();
15297   func_glVertexAttrib1dNV( index, x );
15298   LEAVE_GL();
15299 }
15300
15301 static void WINAPI wine_glVertexAttrib1dv( GLuint index, GLdouble* v ) {
15302   void (*func_glVertexAttrib1dv)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib1dv];
15303   TRACE("(%d, %p)\n", index, v );
15304   ENTER_GL();
15305   func_glVertexAttrib1dv( index, v );
15306   LEAVE_GL();
15307 }
15308
15309 static void WINAPI wine_glVertexAttrib1dvARB( GLuint index, GLdouble* v ) {
15310   void (*func_glVertexAttrib1dvARB)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib1dvARB];
15311   TRACE("(%d, %p)\n", index, v );
15312   ENTER_GL();
15313   func_glVertexAttrib1dvARB( index, v );
15314   LEAVE_GL();
15315 }
15316
15317 static void WINAPI wine_glVertexAttrib1dvNV( GLuint index, GLdouble* v ) {
15318   void (*func_glVertexAttrib1dvNV)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib1dvNV];
15319   TRACE("(%d, %p)\n", index, v );
15320   ENTER_GL();
15321   func_glVertexAttrib1dvNV( index, v );
15322   LEAVE_GL();
15323 }
15324
15325 static void WINAPI wine_glVertexAttrib1f( GLuint index, GLfloat x ) {
15326   void (*func_glVertexAttrib1f)( GLuint, GLfloat ) = extension_funcs[EXT_glVertexAttrib1f];
15327   TRACE("(%d, %f)\n", index, x );
15328   ENTER_GL();
15329   func_glVertexAttrib1f( index, x );
15330   LEAVE_GL();
15331 }
15332
15333 static void WINAPI wine_glVertexAttrib1fARB( GLuint index, GLfloat x ) {
15334   void (*func_glVertexAttrib1fARB)( GLuint, GLfloat ) = extension_funcs[EXT_glVertexAttrib1fARB];
15335   TRACE("(%d, %f)\n", index, x );
15336   ENTER_GL();
15337   func_glVertexAttrib1fARB( index, x );
15338   LEAVE_GL();
15339 }
15340
15341 static void WINAPI wine_glVertexAttrib1fNV( GLuint index, GLfloat x ) {
15342   void (*func_glVertexAttrib1fNV)( GLuint, GLfloat ) = extension_funcs[EXT_glVertexAttrib1fNV];
15343   TRACE("(%d, %f)\n", index, x );
15344   ENTER_GL();
15345   func_glVertexAttrib1fNV( index, x );
15346   LEAVE_GL();
15347 }
15348
15349 static void WINAPI wine_glVertexAttrib1fv( GLuint index, GLfloat* v ) {
15350   void (*func_glVertexAttrib1fv)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib1fv];
15351   TRACE("(%d, %p)\n", index, v );
15352   ENTER_GL();
15353   func_glVertexAttrib1fv( index, v );
15354   LEAVE_GL();
15355 }
15356
15357 static void WINAPI wine_glVertexAttrib1fvARB( GLuint index, GLfloat* v ) {
15358   void (*func_glVertexAttrib1fvARB)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib1fvARB];
15359   TRACE("(%d, %p)\n", index, v );
15360   ENTER_GL();
15361   func_glVertexAttrib1fvARB( index, v );
15362   LEAVE_GL();
15363 }
15364
15365 static void WINAPI wine_glVertexAttrib1fvNV( GLuint index, GLfloat* v ) {
15366   void (*func_glVertexAttrib1fvNV)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib1fvNV];
15367   TRACE("(%d, %p)\n", index, v );
15368   ENTER_GL();
15369   func_glVertexAttrib1fvNV( index, v );
15370   LEAVE_GL();
15371 }
15372
15373 static void WINAPI wine_glVertexAttrib1hNV( GLuint index, unsigned short x ) {
15374   void (*func_glVertexAttrib1hNV)( GLuint, unsigned short ) = extension_funcs[EXT_glVertexAttrib1hNV];
15375   TRACE("(%d, %d)\n", index, x );
15376   ENTER_GL();
15377   func_glVertexAttrib1hNV( index, x );
15378   LEAVE_GL();
15379 }
15380
15381 static void WINAPI wine_glVertexAttrib1hvNV( GLuint index, unsigned short* v ) {
15382   void (*func_glVertexAttrib1hvNV)( GLuint, unsigned short* ) = extension_funcs[EXT_glVertexAttrib1hvNV];
15383   TRACE("(%d, %p)\n", index, v );
15384   ENTER_GL();
15385   func_glVertexAttrib1hvNV( index, v );
15386   LEAVE_GL();
15387 }
15388
15389 static void WINAPI wine_glVertexAttrib1s( GLuint index, GLshort x ) {
15390   void (*func_glVertexAttrib1s)( GLuint, GLshort ) = extension_funcs[EXT_glVertexAttrib1s];
15391   TRACE("(%d, %d)\n", index, x );
15392   ENTER_GL();
15393   func_glVertexAttrib1s( index, x );
15394   LEAVE_GL();
15395 }
15396
15397 static void WINAPI wine_glVertexAttrib1sARB( GLuint index, GLshort x ) {
15398   void (*func_glVertexAttrib1sARB)( GLuint, GLshort ) = extension_funcs[EXT_glVertexAttrib1sARB];
15399   TRACE("(%d, %d)\n", index, x );
15400   ENTER_GL();
15401   func_glVertexAttrib1sARB( index, x );
15402   LEAVE_GL();
15403 }
15404
15405 static void WINAPI wine_glVertexAttrib1sNV( GLuint index, GLshort x ) {
15406   void (*func_glVertexAttrib1sNV)( GLuint, GLshort ) = extension_funcs[EXT_glVertexAttrib1sNV];
15407   TRACE("(%d, %d)\n", index, x );
15408   ENTER_GL();
15409   func_glVertexAttrib1sNV( index, x );
15410   LEAVE_GL();
15411 }
15412
15413 static void WINAPI wine_glVertexAttrib1sv( GLuint index, GLshort* v ) {
15414   void (*func_glVertexAttrib1sv)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib1sv];
15415   TRACE("(%d, %p)\n", index, v );
15416   ENTER_GL();
15417   func_glVertexAttrib1sv( index, v );
15418   LEAVE_GL();
15419 }
15420
15421 static void WINAPI wine_glVertexAttrib1svARB( GLuint index, GLshort* v ) {
15422   void (*func_glVertexAttrib1svARB)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib1svARB];
15423   TRACE("(%d, %p)\n", index, v );
15424   ENTER_GL();
15425   func_glVertexAttrib1svARB( index, v );
15426   LEAVE_GL();
15427 }
15428
15429 static void WINAPI wine_glVertexAttrib1svNV( GLuint index, GLshort* v ) {
15430   void (*func_glVertexAttrib1svNV)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib1svNV];
15431   TRACE("(%d, %p)\n", index, v );
15432   ENTER_GL();
15433   func_glVertexAttrib1svNV( index, v );
15434   LEAVE_GL();
15435 }
15436
15437 static void WINAPI wine_glVertexAttrib2d( GLuint index, GLdouble x, GLdouble y ) {
15438   void (*func_glVertexAttrib2d)( GLuint, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib2d];
15439   TRACE("(%d, %f, %f)\n", index, x, y );
15440   ENTER_GL();
15441   func_glVertexAttrib2d( index, x, y );
15442   LEAVE_GL();
15443 }
15444
15445 static void WINAPI wine_glVertexAttrib2dARB( GLuint index, GLdouble x, GLdouble y ) {
15446   void (*func_glVertexAttrib2dARB)( GLuint, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib2dARB];
15447   TRACE("(%d, %f, %f)\n", index, x, y );
15448   ENTER_GL();
15449   func_glVertexAttrib2dARB( index, x, y );
15450   LEAVE_GL();
15451 }
15452
15453 static void WINAPI wine_glVertexAttrib2dNV( GLuint index, GLdouble x, GLdouble y ) {
15454   void (*func_glVertexAttrib2dNV)( GLuint, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib2dNV];
15455   TRACE("(%d, %f, %f)\n", index, x, y );
15456   ENTER_GL();
15457   func_glVertexAttrib2dNV( index, x, y );
15458   LEAVE_GL();
15459 }
15460
15461 static void WINAPI wine_glVertexAttrib2dv( GLuint index, GLdouble* v ) {
15462   void (*func_glVertexAttrib2dv)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib2dv];
15463   TRACE("(%d, %p)\n", index, v );
15464   ENTER_GL();
15465   func_glVertexAttrib2dv( index, v );
15466   LEAVE_GL();
15467 }
15468
15469 static void WINAPI wine_glVertexAttrib2dvARB( GLuint index, GLdouble* v ) {
15470   void (*func_glVertexAttrib2dvARB)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib2dvARB];
15471   TRACE("(%d, %p)\n", index, v );
15472   ENTER_GL();
15473   func_glVertexAttrib2dvARB( index, v );
15474   LEAVE_GL();
15475 }
15476
15477 static void WINAPI wine_glVertexAttrib2dvNV( GLuint index, GLdouble* v ) {
15478   void (*func_glVertexAttrib2dvNV)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib2dvNV];
15479   TRACE("(%d, %p)\n", index, v );
15480   ENTER_GL();
15481   func_glVertexAttrib2dvNV( index, v );
15482   LEAVE_GL();
15483 }
15484
15485 static void WINAPI wine_glVertexAttrib2f( GLuint index, GLfloat x, GLfloat y ) {
15486   void (*func_glVertexAttrib2f)( GLuint, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib2f];
15487   TRACE("(%d, %f, %f)\n", index, x, y );
15488   ENTER_GL();
15489   func_glVertexAttrib2f( index, x, y );
15490   LEAVE_GL();
15491 }
15492
15493 static void WINAPI wine_glVertexAttrib2fARB( GLuint index, GLfloat x, GLfloat y ) {
15494   void (*func_glVertexAttrib2fARB)( GLuint, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib2fARB];
15495   TRACE("(%d, %f, %f)\n", index, x, y );
15496   ENTER_GL();
15497   func_glVertexAttrib2fARB( index, x, y );
15498   LEAVE_GL();
15499 }
15500
15501 static void WINAPI wine_glVertexAttrib2fNV( GLuint index, GLfloat x, GLfloat y ) {
15502   void (*func_glVertexAttrib2fNV)( GLuint, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib2fNV];
15503   TRACE("(%d, %f, %f)\n", index, x, y );
15504   ENTER_GL();
15505   func_glVertexAttrib2fNV( index, x, y );
15506   LEAVE_GL();
15507 }
15508
15509 static void WINAPI wine_glVertexAttrib2fv( GLuint index, GLfloat* v ) {
15510   void (*func_glVertexAttrib2fv)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib2fv];
15511   TRACE("(%d, %p)\n", index, v );
15512   ENTER_GL();
15513   func_glVertexAttrib2fv( index, v );
15514   LEAVE_GL();
15515 }
15516
15517 static void WINAPI wine_glVertexAttrib2fvARB( GLuint index, GLfloat* v ) {
15518   void (*func_glVertexAttrib2fvARB)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib2fvARB];
15519   TRACE("(%d, %p)\n", index, v );
15520   ENTER_GL();
15521   func_glVertexAttrib2fvARB( index, v );
15522   LEAVE_GL();
15523 }
15524
15525 static void WINAPI wine_glVertexAttrib2fvNV( GLuint index, GLfloat* v ) {
15526   void (*func_glVertexAttrib2fvNV)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib2fvNV];
15527   TRACE("(%d, %p)\n", index, v );
15528   ENTER_GL();
15529   func_glVertexAttrib2fvNV( index, v );
15530   LEAVE_GL();
15531 }
15532
15533 static void WINAPI wine_glVertexAttrib2hNV( GLuint index, unsigned short x, unsigned short y ) {
15534   void (*func_glVertexAttrib2hNV)( GLuint, unsigned short, unsigned short ) = extension_funcs[EXT_glVertexAttrib2hNV];
15535   TRACE("(%d, %d, %d)\n", index, x, y );
15536   ENTER_GL();
15537   func_glVertexAttrib2hNV( index, x, y );
15538   LEAVE_GL();
15539 }
15540
15541 static void WINAPI wine_glVertexAttrib2hvNV( GLuint index, unsigned short* v ) {
15542   void (*func_glVertexAttrib2hvNV)( GLuint, unsigned short* ) = extension_funcs[EXT_glVertexAttrib2hvNV];
15543   TRACE("(%d, %p)\n", index, v );
15544   ENTER_GL();
15545   func_glVertexAttrib2hvNV( index, v );
15546   LEAVE_GL();
15547 }
15548
15549 static void WINAPI wine_glVertexAttrib2s( GLuint index, GLshort x, GLshort y ) {
15550   void (*func_glVertexAttrib2s)( GLuint, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib2s];
15551   TRACE("(%d, %d, %d)\n", index, x, y );
15552   ENTER_GL();
15553   func_glVertexAttrib2s( index, x, y );
15554   LEAVE_GL();
15555 }
15556
15557 static void WINAPI wine_glVertexAttrib2sARB( GLuint index, GLshort x, GLshort y ) {
15558   void (*func_glVertexAttrib2sARB)( GLuint, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib2sARB];
15559   TRACE("(%d, %d, %d)\n", index, x, y );
15560   ENTER_GL();
15561   func_glVertexAttrib2sARB( index, x, y );
15562   LEAVE_GL();
15563 }
15564
15565 static void WINAPI wine_glVertexAttrib2sNV( GLuint index, GLshort x, GLshort y ) {
15566   void (*func_glVertexAttrib2sNV)( GLuint, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib2sNV];
15567   TRACE("(%d, %d, %d)\n", index, x, y );
15568   ENTER_GL();
15569   func_glVertexAttrib2sNV( index, x, y );
15570   LEAVE_GL();
15571 }
15572
15573 static void WINAPI wine_glVertexAttrib2sv( GLuint index, GLshort* v ) {
15574   void (*func_glVertexAttrib2sv)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib2sv];
15575   TRACE("(%d, %p)\n", index, v );
15576   ENTER_GL();
15577   func_glVertexAttrib2sv( index, v );
15578   LEAVE_GL();
15579 }
15580
15581 static void WINAPI wine_glVertexAttrib2svARB( GLuint index, GLshort* v ) {
15582   void (*func_glVertexAttrib2svARB)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib2svARB];
15583   TRACE("(%d, %p)\n", index, v );
15584   ENTER_GL();
15585   func_glVertexAttrib2svARB( index, v );
15586   LEAVE_GL();
15587 }
15588
15589 static void WINAPI wine_glVertexAttrib2svNV( GLuint index, GLshort* v ) {
15590   void (*func_glVertexAttrib2svNV)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib2svNV];
15591   TRACE("(%d, %p)\n", index, v );
15592   ENTER_GL();
15593   func_glVertexAttrib2svNV( index, v );
15594   LEAVE_GL();
15595 }
15596
15597 static void WINAPI wine_glVertexAttrib3d( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
15598   void (*func_glVertexAttrib3d)( GLuint, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib3d];
15599   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
15600   ENTER_GL();
15601   func_glVertexAttrib3d( index, x, y, z );
15602   LEAVE_GL();
15603 }
15604
15605 static void WINAPI wine_glVertexAttrib3dARB( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
15606   void (*func_glVertexAttrib3dARB)( GLuint, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib3dARB];
15607   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
15608   ENTER_GL();
15609   func_glVertexAttrib3dARB( index, x, y, z );
15610   LEAVE_GL();
15611 }
15612
15613 static void WINAPI wine_glVertexAttrib3dNV( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
15614   void (*func_glVertexAttrib3dNV)( GLuint, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib3dNV];
15615   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
15616   ENTER_GL();
15617   func_glVertexAttrib3dNV( index, x, y, z );
15618   LEAVE_GL();
15619 }
15620
15621 static void WINAPI wine_glVertexAttrib3dv( GLuint index, GLdouble* v ) {
15622   void (*func_glVertexAttrib3dv)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib3dv];
15623   TRACE("(%d, %p)\n", index, v );
15624   ENTER_GL();
15625   func_glVertexAttrib3dv( index, v );
15626   LEAVE_GL();
15627 }
15628
15629 static void WINAPI wine_glVertexAttrib3dvARB( GLuint index, GLdouble* v ) {
15630   void (*func_glVertexAttrib3dvARB)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib3dvARB];
15631   TRACE("(%d, %p)\n", index, v );
15632   ENTER_GL();
15633   func_glVertexAttrib3dvARB( index, v );
15634   LEAVE_GL();
15635 }
15636
15637 static void WINAPI wine_glVertexAttrib3dvNV( GLuint index, GLdouble* v ) {
15638   void (*func_glVertexAttrib3dvNV)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib3dvNV];
15639   TRACE("(%d, %p)\n", index, v );
15640   ENTER_GL();
15641   func_glVertexAttrib3dvNV( index, v );
15642   LEAVE_GL();
15643 }
15644
15645 static void WINAPI wine_glVertexAttrib3f( GLuint index, GLfloat x, GLfloat y, GLfloat z ) {
15646   void (*func_glVertexAttrib3f)( GLuint, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib3f];
15647   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
15648   ENTER_GL();
15649   func_glVertexAttrib3f( index, x, y, z );
15650   LEAVE_GL();
15651 }
15652
15653 static void WINAPI wine_glVertexAttrib3fARB( GLuint index, GLfloat x, GLfloat y, GLfloat z ) {
15654   void (*func_glVertexAttrib3fARB)( GLuint, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib3fARB];
15655   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
15656   ENTER_GL();
15657   func_glVertexAttrib3fARB( index, x, y, z );
15658   LEAVE_GL();
15659 }
15660
15661 static void WINAPI wine_glVertexAttrib3fNV( GLuint index, GLfloat x, GLfloat y, GLfloat z ) {
15662   void (*func_glVertexAttrib3fNV)( GLuint, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib3fNV];
15663   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
15664   ENTER_GL();
15665   func_glVertexAttrib3fNV( index, x, y, z );
15666   LEAVE_GL();
15667 }
15668
15669 static void WINAPI wine_glVertexAttrib3fv( GLuint index, GLfloat* v ) {
15670   void (*func_glVertexAttrib3fv)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib3fv];
15671   TRACE("(%d, %p)\n", index, v );
15672   ENTER_GL();
15673   func_glVertexAttrib3fv( index, v );
15674   LEAVE_GL();
15675 }
15676
15677 static void WINAPI wine_glVertexAttrib3fvARB( GLuint index, GLfloat* v ) {
15678   void (*func_glVertexAttrib3fvARB)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib3fvARB];
15679   TRACE("(%d, %p)\n", index, v );
15680   ENTER_GL();
15681   func_glVertexAttrib3fvARB( index, v );
15682   LEAVE_GL();
15683 }
15684
15685 static void WINAPI wine_glVertexAttrib3fvNV( GLuint index, GLfloat* v ) {
15686   void (*func_glVertexAttrib3fvNV)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib3fvNV];
15687   TRACE("(%d, %p)\n", index, v );
15688   ENTER_GL();
15689   func_glVertexAttrib3fvNV( index, v );
15690   LEAVE_GL();
15691 }
15692
15693 static void WINAPI wine_glVertexAttrib3hNV( GLuint index, unsigned short x, unsigned short y, unsigned short z ) {
15694   void (*func_glVertexAttrib3hNV)( GLuint, unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glVertexAttrib3hNV];
15695   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
15696   ENTER_GL();
15697   func_glVertexAttrib3hNV( index, x, y, z );
15698   LEAVE_GL();
15699 }
15700
15701 static void WINAPI wine_glVertexAttrib3hvNV( GLuint index, unsigned short* v ) {
15702   void (*func_glVertexAttrib3hvNV)( GLuint, unsigned short* ) = extension_funcs[EXT_glVertexAttrib3hvNV];
15703   TRACE("(%d, %p)\n", index, v );
15704   ENTER_GL();
15705   func_glVertexAttrib3hvNV( index, v );
15706   LEAVE_GL();
15707 }
15708
15709 static void WINAPI wine_glVertexAttrib3s( GLuint index, GLshort x, GLshort y, GLshort z ) {
15710   void (*func_glVertexAttrib3s)( GLuint, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib3s];
15711   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
15712   ENTER_GL();
15713   func_glVertexAttrib3s( index, x, y, z );
15714   LEAVE_GL();
15715 }
15716
15717 static void WINAPI wine_glVertexAttrib3sARB( GLuint index, GLshort x, GLshort y, GLshort z ) {
15718   void (*func_glVertexAttrib3sARB)( GLuint, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib3sARB];
15719   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
15720   ENTER_GL();
15721   func_glVertexAttrib3sARB( index, x, y, z );
15722   LEAVE_GL();
15723 }
15724
15725 static void WINAPI wine_glVertexAttrib3sNV( GLuint index, GLshort x, GLshort y, GLshort z ) {
15726   void (*func_glVertexAttrib3sNV)( GLuint, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib3sNV];
15727   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
15728   ENTER_GL();
15729   func_glVertexAttrib3sNV( index, x, y, z );
15730   LEAVE_GL();
15731 }
15732
15733 static void WINAPI wine_glVertexAttrib3sv( GLuint index, GLshort* v ) {
15734   void (*func_glVertexAttrib3sv)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib3sv];
15735   TRACE("(%d, %p)\n", index, v );
15736   ENTER_GL();
15737   func_glVertexAttrib3sv( index, v );
15738   LEAVE_GL();
15739 }
15740
15741 static void WINAPI wine_glVertexAttrib3svARB( GLuint index, GLshort* v ) {
15742   void (*func_glVertexAttrib3svARB)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib3svARB];
15743   TRACE("(%d, %p)\n", index, v );
15744   ENTER_GL();
15745   func_glVertexAttrib3svARB( index, v );
15746   LEAVE_GL();
15747 }
15748
15749 static void WINAPI wine_glVertexAttrib3svNV( GLuint index, GLshort* v ) {
15750   void (*func_glVertexAttrib3svNV)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib3svNV];
15751   TRACE("(%d, %p)\n", index, v );
15752   ENTER_GL();
15753   func_glVertexAttrib3svNV( index, v );
15754   LEAVE_GL();
15755 }
15756
15757 static void WINAPI wine_glVertexAttrib4Nbv( GLuint index, GLbyte* v ) {
15758   void (*func_glVertexAttrib4Nbv)( GLuint, GLbyte* ) = extension_funcs[EXT_glVertexAttrib4Nbv];
15759   TRACE("(%d, %p)\n", index, v );
15760   ENTER_GL();
15761   func_glVertexAttrib4Nbv( index, v );
15762   LEAVE_GL();
15763 }
15764
15765 static void WINAPI wine_glVertexAttrib4NbvARB( GLuint index, GLbyte* v ) {
15766   void (*func_glVertexAttrib4NbvARB)( GLuint, GLbyte* ) = extension_funcs[EXT_glVertexAttrib4NbvARB];
15767   TRACE("(%d, %p)\n", index, v );
15768   ENTER_GL();
15769   func_glVertexAttrib4NbvARB( index, v );
15770   LEAVE_GL();
15771 }
15772
15773 static void WINAPI wine_glVertexAttrib4Niv( GLuint index, GLint* v ) {
15774   void (*func_glVertexAttrib4Niv)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttrib4Niv];
15775   TRACE("(%d, %p)\n", index, v );
15776   ENTER_GL();
15777   func_glVertexAttrib4Niv( index, v );
15778   LEAVE_GL();
15779 }
15780
15781 static void WINAPI wine_glVertexAttrib4NivARB( GLuint index, GLint* v ) {
15782   void (*func_glVertexAttrib4NivARB)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttrib4NivARB];
15783   TRACE("(%d, %p)\n", index, v );
15784   ENTER_GL();
15785   func_glVertexAttrib4NivARB( index, v );
15786   LEAVE_GL();
15787 }
15788
15789 static void WINAPI wine_glVertexAttrib4Nsv( GLuint index, GLshort* v ) {
15790   void (*func_glVertexAttrib4Nsv)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib4Nsv];
15791   TRACE("(%d, %p)\n", index, v );
15792   ENTER_GL();
15793   func_glVertexAttrib4Nsv( index, v );
15794   LEAVE_GL();
15795 }
15796
15797 static void WINAPI wine_glVertexAttrib4NsvARB( GLuint index, GLshort* v ) {
15798   void (*func_glVertexAttrib4NsvARB)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib4NsvARB];
15799   TRACE("(%d, %p)\n", index, v );
15800   ENTER_GL();
15801   func_glVertexAttrib4NsvARB( index, v );
15802   LEAVE_GL();
15803 }
15804
15805 static void WINAPI wine_glVertexAttrib4Nub( GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w ) {
15806   void (*func_glVertexAttrib4Nub)( GLuint, GLubyte, GLubyte, GLubyte, GLubyte ) = extension_funcs[EXT_glVertexAttrib4Nub];
15807   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
15808   ENTER_GL();
15809   func_glVertexAttrib4Nub( index, x, y, z, w );
15810   LEAVE_GL();
15811 }
15812
15813 static void WINAPI wine_glVertexAttrib4NubARB( GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w ) {
15814   void (*func_glVertexAttrib4NubARB)( GLuint, GLubyte, GLubyte, GLubyte, GLubyte ) = extension_funcs[EXT_glVertexAttrib4NubARB];
15815   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
15816   ENTER_GL();
15817   func_glVertexAttrib4NubARB( index, x, y, z, w );
15818   LEAVE_GL();
15819 }
15820
15821 static void WINAPI wine_glVertexAttrib4Nubv( GLuint index, GLubyte* v ) {
15822   void (*func_glVertexAttrib4Nubv)( GLuint, GLubyte* ) = extension_funcs[EXT_glVertexAttrib4Nubv];
15823   TRACE("(%d, %p)\n", index, v );
15824   ENTER_GL();
15825   func_glVertexAttrib4Nubv( index, v );
15826   LEAVE_GL();
15827 }
15828
15829 static void WINAPI wine_glVertexAttrib4NubvARB( GLuint index, GLubyte* v ) {
15830   void (*func_glVertexAttrib4NubvARB)( GLuint, GLubyte* ) = extension_funcs[EXT_glVertexAttrib4NubvARB];
15831   TRACE("(%d, %p)\n", index, v );
15832   ENTER_GL();
15833   func_glVertexAttrib4NubvARB( index, v );
15834   LEAVE_GL();
15835 }
15836
15837 static void WINAPI wine_glVertexAttrib4Nuiv( GLuint index, GLuint* v ) {
15838   void (*func_glVertexAttrib4Nuiv)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttrib4Nuiv];
15839   TRACE("(%d, %p)\n", index, v );
15840   ENTER_GL();
15841   func_glVertexAttrib4Nuiv( index, v );
15842   LEAVE_GL();
15843 }
15844
15845 static void WINAPI wine_glVertexAttrib4NuivARB( GLuint index, GLuint* v ) {
15846   void (*func_glVertexAttrib4NuivARB)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttrib4NuivARB];
15847   TRACE("(%d, %p)\n", index, v );
15848   ENTER_GL();
15849   func_glVertexAttrib4NuivARB( index, v );
15850   LEAVE_GL();
15851 }
15852
15853 static void WINAPI wine_glVertexAttrib4Nusv( GLuint index, GLushort* v ) {
15854   void (*func_glVertexAttrib4Nusv)( GLuint, GLushort* ) = extension_funcs[EXT_glVertexAttrib4Nusv];
15855   TRACE("(%d, %p)\n", index, v );
15856   ENTER_GL();
15857   func_glVertexAttrib4Nusv( index, v );
15858   LEAVE_GL();
15859 }
15860
15861 static void WINAPI wine_glVertexAttrib4NusvARB( GLuint index, GLushort* v ) {
15862   void (*func_glVertexAttrib4NusvARB)( GLuint, GLushort* ) = extension_funcs[EXT_glVertexAttrib4NusvARB];
15863   TRACE("(%d, %p)\n", index, v );
15864   ENTER_GL();
15865   func_glVertexAttrib4NusvARB( index, v );
15866   LEAVE_GL();
15867 }
15868
15869 static void WINAPI wine_glVertexAttrib4bv( GLuint index, GLbyte* v ) {
15870   void (*func_glVertexAttrib4bv)( GLuint, GLbyte* ) = extension_funcs[EXT_glVertexAttrib4bv];
15871   TRACE("(%d, %p)\n", index, v );
15872   ENTER_GL();
15873   func_glVertexAttrib4bv( index, v );
15874   LEAVE_GL();
15875 }
15876
15877 static void WINAPI wine_glVertexAttrib4bvARB( GLuint index, GLbyte* v ) {
15878   void (*func_glVertexAttrib4bvARB)( GLuint, GLbyte* ) = extension_funcs[EXT_glVertexAttrib4bvARB];
15879   TRACE("(%d, %p)\n", index, v );
15880   ENTER_GL();
15881   func_glVertexAttrib4bvARB( index, v );
15882   LEAVE_GL();
15883 }
15884
15885 static void WINAPI wine_glVertexAttrib4d( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
15886   void (*func_glVertexAttrib4d)( GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib4d];
15887   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
15888   ENTER_GL();
15889   func_glVertexAttrib4d( index, x, y, z, w );
15890   LEAVE_GL();
15891 }
15892
15893 static void WINAPI wine_glVertexAttrib4dARB( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
15894   void (*func_glVertexAttrib4dARB)( GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib4dARB];
15895   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
15896   ENTER_GL();
15897   func_glVertexAttrib4dARB( index, x, y, z, w );
15898   LEAVE_GL();
15899 }
15900
15901 static void WINAPI wine_glVertexAttrib4dNV( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
15902   void (*func_glVertexAttrib4dNV)( GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttrib4dNV];
15903   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
15904   ENTER_GL();
15905   func_glVertexAttrib4dNV( index, x, y, z, w );
15906   LEAVE_GL();
15907 }
15908
15909 static void WINAPI wine_glVertexAttrib4dv( GLuint index, GLdouble* v ) {
15910   void (*func_glVertexAttrib4dv)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib4dv];
15911   TRACE("(%d, %p)\n", index, v );
15912   ENTER_GL();
15913   func_glVertexAttrib4dv( index, v );
15914   LEAVE_GL();
15915 }
15916
15917 static void WINAPI wine_glVertexAttrib4dvARB( GLuint index, GLdouble* v ) {
15918   void (*func_glVertexAttrib4dvARB)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib4dvARB];
15919   TRACE("(%d, %p)\n", index, v );
15920   ENTER_GL();
15921   func_glVertexAttrib4dvARB( index, v );
15922   LEAVE_GL();
15923 }
15924
15925 static void WINAPI wine_glVertexAttrib4dvNV( GLuint index, GLdouble* v ) {
15926   void (*func_glVertexAttrib4dvNV)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttrib4dvNV];
15927   TRACE("(%d, %p)\n", index, v );
15928   ENTER_GL();
15929   func_glVertexAttrib4dvNV( index, v );
15930   LEAVE_GL();
15931 }
15932
15933 static void WINAPI wine_glVertexAttrib4f( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
15934   void (*func_glVertexAttrib4f)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib4f];
15935   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
15936   ENTER_GL();
15937   func_glVertexAttrib4f( index, x, y, z, w );
15938   LEAVE_GL();
15939 }
15940
15941 static void WINAPI wine_glVertexAttrib4fARB( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
15942   void (*func_glVertexAttrib4fARB)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib4fARB];
15943   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
15944   ENTER_GL();
15945   func_glVertexAttrib4fARB( index, x, y, z, w );
15946   LEAVE_GL();
15947 }
15948
15949 static void WINAPI wine_glVertexAttrib4fNV( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
15950   void (*func_glVertexAttrib4fNV)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexAttrib4fNV];
15951   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
15952   ENTER_GL();
15953   func_glVertexAttrib4fNV( index, x, y, z, w );
15954   LEAVE_GL();
15955 }
15956
15957 static void WINAPI wine_glVertexAttrib4fv( GLuint index, GLfloat* v ) {
15958   void (*func_glVertexAttrib4fv)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib4fv];
15959   TRACE("(%d, %p)\n", index, v );
15960   ENTER_GL();
15961   func_glVertexAttrib4fv( index, v );
15962   LEAVE_GL();
15963 }
15964
15965 static void WINAPI wine_glVertexAttrib4fvARB( GLuint index, GLfloat* v ) {
15966   void (*func_glVertexAttrib4fvARB)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib4fvARB];
15967   TRACE("(%d, %p)\n", index, v );
15968   ENTER_GL();
15969   func_glVertexAttrib4fvARB( index, v );
15970   LEAVE_GL();
15971 }
15972
15973 static void WINAPI wine_glVertexAttrib4fvNV( GLuint index, GLfloat* v ) {
15974   void (*func_glVertexAttrib4fvNV)( GLuint, GLfloat* ) = extension_funcs[EXT_glVertexAttrib4fvNV];
15975   TRACE("(%d, %p)\n", index, v );
15976   ENTER_GL();
15977   func_glVertexAttrib4fvNV( index, v );
15978   LEAVE_GL();
15979 }
15980
15981 static void WINAPI wine_glVertexAttrib4hNV( GLuint index, unsigned short x, unsigned short y, unsigned short z, unsigned short w ) {
15982   void (*func_glVertexAttrib4hNV)( GLuint, unsigned short, unsigned short, unsigned short, unsigned short ) = extension_funcs[EXT_glVertexAttrib4hNV];
15983   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
15984   ENTER_GL();
15985   func_glVertexAttrib4hNV( index, x, y, z, w );
15986   LEAVE_GL();
15987 }
15988
15989 static void WINAPI wine_glVertexAttrib4hvNV( GLuint index, unsigned short* v ) {
15990   void (*func_glVertexAttrib4hvNV)( GLuint, unsigned short* ) = extension_funcs[EXT_glVertexAttrib4hvNV];
15991   TRACE("(%d, %p)\n", index, v );
15992   ENTER_GL();
15993   func_glVertexAttrib4hvNV( index, v );
15994   LEAVE_GL();
15995 }
15996
15997 static void WINAPI wine_glVertexAttrib4iv( GLuint index, GLint* v ) {
15998   void (*func_glVertexAttrib4iv)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttrib4iv];
15999   TRACE("(%d, %p)\n", index, v );
16000   ENTER_GL();
16001   func_glVertexAttrib4iv( index, v );
16002   LEAVE_GL();
16003 }
16004
16005 static void WINAPI wine_glVertexAttrib4ivARB( GLuint index, GLint* v ) {
16006   void (*func_glVertexAttrib4ivARB)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttrib4ivARB];
16007   TRACE("(%d, %p)\n", index, v );
16008   ENTER_GL();
16009   func_glVertexAttrib4ivARB( index, v );
16010   LEAVE_GL();
16011 }
16012
16013 static void WINAPI wine_glVertexAttrib4s( GLuint index, GLshort x, GLshort y, GLshort z, GLshort w ) {
16014   void (*func_glVertexAttrib4s)( GLuint, GLshort, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib4s];
16015   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
16016   ENTER_GL();
16017   func_glVertexAttrib4s( index, x, y, z, w );
16018   LEAVE_GL();
16019 }
16020
16021 static void WINAPI wine_glVertexAttrib4sARB( GLuint index, GLshort x, GLshort y, GLshort z, GLshort w ) {
16022   void (*func_glVertexAttrib4sARB)( GLuint, GLshort, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib4sARB];
16023   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
16024   ENTER_GL();
16025   func_glVertexAttrib4sARB( index, x, y, z, w );
16026   LEAVE_GL();
16027 }
16028
16029 static void WINAPI wine_glVertexAttrib4sNV( GLuint index, GLshort x, GLshort y, GLshort z, GLshort w ) {
16030   void (*func_glVertexAttrib4sNV)( GLuint, GLshort, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glVertexAttrib4sNV];
16031   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
16032   ENTER_GL();
16033   func_glVertexAttrib4sNV( index, x, y, z, w );
16034   LEAVE_GL();
16035 }
16036
16037 static void WINAPI wine_glVertexAttrib4sv( GLuint index, GLshort* v ) {
16038   void (*func_glVertexAttrib4sv)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib4sv];
16039   TRACE("(%d, %p)\n", index, v );
16040   ENTER_GL();
16041   func_glVertexAttrib4sv( index, v );
16042   LEAVE_GL();
16043 }
16044
16045 static void WINAPI wine_glVertexAttrib4svARB( GLuint index, GLshort* v ) {
16046   void (*func_glVertexAttrib4svARB)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib4svARB];
16047   TRACE("(%d, %p)\n", index, v );
16048   ENTER_GL();
16049   func_glVertexAttrib4svARB( index, v );
16050   LEAVE_GL();
16051 }
16052
16053 static void WINAPI wine_glVertexAttrib4svNV( GLuint index, GLshort* v ) {
16054   void (*func_glVertexAttrib4svNV)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttrib4svNV];
16055   TRACE("(%d, %p)\n", index, v );
16056   ENTER_GL();
16057   func_glVertexAttrib4svNV( index, v );
16058   LEAVE_GL();
16059 }
16060
16061 static void WINAPI wine_glVertexAttrib4ubNV( GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w ) {
16062   void (*func_glVertexAttrib4ubNV)( GLuint, GLubyte, GLubyte, GLubyte, GLubyte ) = extension_funcs[EXT_glVertexAttrib4ubNV];
16063   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
16064   ENTER_GL();
16065   func_glVertexAttrib4ubNV( index, x, y, z, w );
16066   LEAVE_GL();
16067 }
16068
16069 static void WINAPI wine_glVertexAttrib4ubv( GLuint index, GLubyte* v ) {
16070   void (*func_glVertexAttrib4ubv)( GLuint, GLubyte* ) = extension_funcs[EXT_glVertexAttrib4ubv];
16071   TRACE("(%d, %p)\n", index, v );
16072   ENTER_GL();
16073   func_glVertexAttrib4ubv( index, v );
16074   LEAVE_GL();
16075 }
16076
16077 static void WINAPI wine_glVertexAttrib4ubvARB( GLuint index, GLubyte* v ) {
16078   void (*func_glVertexAttrib4ubvARB)( GLuint, GLubyte* ) = extension_funcs[EXT_glVertexAttrib4ubvARB];
16079   TRACE("(%d, %p)\n", index, v );
16080   ENTER_GL();
16081   func_glVertexAttrib4ubvARB( index, v );
16082   LEAVE_GL();
16083 }
16084
16085 static void WINAPI wine_glVertexAttrib4ubvNV( GLuint index, GLubyte* v ) {
16086   void (*func_glVertexAttrib4ubvNV)( GLuint, GLubyte* ) = extension_funcs[EXT_glVertexAttrib4ubvNV];
16087   TRACE("(%d, %p)\n", index, v );
16088   ENTER_GL();
16089   func_glVertexAttrib4ubvNV( index, v );
16090   LEAVE_GL();
16091 }
16092
16093 static void WINAPI wine_glVertexAttrib4uiv( GLuint index, GLuint* v ) {
16094   void (*func_glVertexAttrib4uiv)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttrib4uiv];
16095   TRACE("(%d, %p)\n", index, v );
16096   ENTER_GL();
16097   func_glVertexAttrib4uiv( index, v );
16098   LEAVE_GL();
16099 }
16100
16101 static void WINAPI wine_glVertexAttrib4uivARB( GLuint index, GLuint* v ) {
16102   void (*func_glVertexAttrib4uivARB)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttrib4uivARB];
16103   TRACE("(%d, %p)\n", index, v );
16104   ENTER_GL();
16105   func_glVertexAttrib4uivARB( index, v );
16106   LEAVE_GL();
16107 }
16108
16109 static void WINAPI wine_glVertexAttrib4usv( GLuint index, GLushort* v ) {
16110   void (*func_glVertexAttrib4usv)( GLuint, GLushort* ) = extension_funcs[EXT_glVertexAttrib4usv];
16111   TRACE("(%d, %p)\n", index, v );
16112   ENTER_GL();
16113   func_glVertexAttrib4usv( index, v );
16114   LEAVE_GL();
16115 }
16116
16117 static void WINAPI wine_glVertexAttrib4usvARB( GLuint index, GLushort* v ) {
16118   void (*func_glVertexAttrib4usvARB)( GLuint, GLushort* ) = extension_funcs[EXT_glVertexAttrib4usvARB];
16119   TRACE("(%d, %p)\n", index, v );
16120   ENTER_GL();
16121   func_glVertexAttrib4usvARB( index, v );
16122   LEAVE_GL();
16123 }
16124
16125 static void WINAPI wine_glVertexAttribArrayObjectATI( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset ) {
16126   void (*func_glVertexAttribArrayObjectATI)( GLuint, GLint, GLenum, GLboolean, GLsizei, GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribArrayObjectATI];
16127   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", index, size, type, normalized, stride, buffer, offset );
16128   ENTER_GL();
16129   func_glVertexAttribArrayObjectATI( index, size, type, normalized, stride, buffer, offset );
16130   LEAVE_GL();
16131 }
16132
16133 static void WINAPI wine_glVertexAttribDivisor( GLuint index, GLuint divisor ) {
16134   void (*func_glVertexAttribDivisor)( GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribDivisor];
16135   TRACE("(%d, %d)\n", index, divisor );
16136   ENTER_GL();
16137   func_glVertexAttribDivisor( index, divisor );
16138   LEAVE_GL();
16139 }
16140
16141 static void WINAPI wine_glVertexAttribDivisorARB( GLuint index, GLuint divisor ) {
16142   void (*func_glVertexAttribDivisorARB)( GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribDivisorARB];
16143   TRACE("(%d, %d)\n", index, divisor );
16144   ENTER_GL();
16145   func_glVertexAttribDivisorARB( index, divisor );
16146   LEAVE_GL();
16147 }
16148
16149 static void WINAPI wine_glVertexAttribFormatNV( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride ) {
16150   void (*func_glVertexAttribFormatNV)( GLuint, GLint, GLenum, GLboolean, GLsizei ) = extension_funcs[EXT_glVertexAttribFormatNV];
16151   TRACE("(%d, %d, %d, %d, %d)\n", index, size, type, normalized, stride );
16152   ENTER_GL();
16153   func_glVertexAttribFormatNV( index, size, type, normalized, stride );
16154   LEAVE_GL();
16155 }
16156
16157 static void WINAPI wine_glVertexAttribI1i( GLuint index, GLint x ) {
16158   void (*func_glVertexAttribI1i)( GLuint, GLint ) = extension_funcs[EXT_glVertexAttribI1i];
16159   TRACE("(%d, %d)\n", index, x );
16160   ENTER_GL();
16161   func_glVertexAttribI1i( index, x );
16162   LEAVE_GL();
16163 }
16164
16165 static void WINAPI wine_glVertexAttribI1iEXT( GLuint index, GLint x ) {
16166   void (*func_glVertexAttribI1iEXT)( GLuint, GLint ) = extension_funcs[EXT_glVertexAttribI1iEXT];
16167   TRACE("(%d, %d)\n", index, x );
16168   ENTER_GL();
16169   func_glVertexAttribI1iEXT( index, x );
16170   LEAVE_GL();
16171 }
16172
16173 static void WINAPI wine_glVertexAttribI1iv( GLuint index, GLint* v ) {
16174   void (*func_glVertexAttribI1iv)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttribI1iv];
16175   TRACE("(%d, %p)\n", index, v );
16176   ENTER_GL();
16177   func_glVertexAttribI1iv( index, v );
16178   LEAVE_GL();
16179 }
16180
16181 static void WINAPI wine_glVertexAttribI1ivEXT( GLuint index, GLint* v ) {
16182   void (*func_glVertexAttribI1ivEXT)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttribI1ivEXT];
16183   TRACE("(%d, %p)\n", index, v );
16184   ENTER_GL();
16185   func_glVertexAttribI1ivEXT( index, v );
16186   LEAVE_GL();
16187 }
16188
16189 static void WINAPI wine_glVertexAttribI1ui( GLuint index, GLuint x ) {
16190   void (*func_glVertexAttribI1ui)( GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribI1ui];
16191   TRACE("(%d, %d)\n", index, x );
16192   ENTER_GL();
16193   func_glVertexAttribI1ui( index, x );
16194   LEAVE_GL();
16195 }
16196
16197 static void WINAPI wine_glVertexAttribI1uiEXT( GLuint index, GLuint x ) {
16198   void (*func_glVertexAttribI1uiEXT)( GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribI1uiEXT];
16199   TRACE("(%d, %d)\n", index, x );
16200   ENTER_GL();
16201   func_glVertexAttribI1uiEXT( index, x );
16202   LEAVE_GL();
16203 }
16204
16205 static void WINAPI wine_glVertexAttribI1uiv( GLuint index, GLuint* v ) {
16206   void (*func_glVertexAttribI1uiv)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttribI1uiv];
16207   TRACE("(%d, %p)\n", index, v );
16208   ENTER_GL();
16209   func_glVertexAttribI1uiv( index, v );
16210   LEAVE_GL();
16211 }
16212
16213 static void WINAPI wine_glVertexAttribI1uivEXT( GLuint index, GLuint* v ) {
16214   void (*func_glVertexAttribI1uivEXT)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttribI1uivEXT];
16215   TRACE("(%d, %p)\n", index, v );
16216   ENTER_GL();
16217   func_glVertexAttribI1uivEXT( index, v );
16218   LEAVE_GL();
16219 }
16220
16221 static void WINAPI wine_glVertexAttribI2i( GLuint index, GLint x, GLint y ) {
16222   void (*func_glVertexAttribI2i)( GLuint, GLint, GLint ) = extension_funcs[EXT_glVertexAttribI2i];
16223   TRACE("(%d, %d, %d)\n", index, x, y );
16224   ENTER_GL();
16225   func_glVertexAttribI2i( index, x, y );
16226   LEAVE_GL();
16227 }
16228
16229 static void WINAPI wine_glVertexAttribI2iEXT( GLuint index, GLint x, GLint y ) {
16230   void (*func_glVertexAttribI2iEXT)( GLuint, GLint, GLint ) = extension_funcs[EXT_glVertexAttribI2iEXT];
16231   TRACE("(%d, %d, %d)\n", index, x, y );
16232   ENTER_GL();
16233   func_glVertexAttribI2iEXT( index, x, y );
16234   LEAVE_GL();
16235 }
16236
16237 static void WINAPI wine_glVertexAttribI2iv( GLuint index, GLint* v ) {
16238   void (*func_glVertexAttribI2iv)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttribI2iv];
16239   TRACE("(%d, %p)\n", index, v );
16240   ENTER_GL();
16241   func_glVertexAttribI2iv( index, v );
16242   LEAVE_GL();
16243 }
16244
16245 static void WINAPI wine_glVertexAttribI2ivEXT( GLuint index, GLint* v ) {
16246   void (*func_glVertexAttribI2ivEXT)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttribI2ivEXT];
16247   TRACE("(%d, %p)\n", index, v );
16248   ENTER_GL();
16249   func_glVertexAttribI2ivEXT( index, v );
16250   LEAVE_GL();
16251 }
16252
16253 static void WINAPI wine_glVertexAttribI2ui( GLuint index, GLuint x, GLuint y ) {
16254   void (*func_glVertexAttribI2ui)( GLuint, GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribI2ui];
16255   TRACE("(%d, %d, %d)\n", index, x, y );
16256   ENTER_GL();
16257   func_glVertexAttribI2ui( index, x, y );
16258   LEAVE_GL();
16259 }
16260
16261 static void WINAPI wine_glVertexAttribI2uiEXT( GLuint index, GLuint x, GLuint y ) {
16262   void (*func_glVertexAttribI2uiEXT)( GLuint, GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribI2uiEXT];
16263   TRACE("(%d, %d, %d)\n", index, x, y );
16264   ENTER_GL();
16265   func_glVertexAttribI2uiEXT( index, x, y );
16266   LEAVE_GL();
16267 }
16268
16269 static void WINAPI wine_glVertexAttribI2uiv( GLuint index, GLuint* v ) {
16270   void (*func_glVertexAttribI2uiv)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttribI2uiv];
16271   TRACE("(%d, %p)\n", index, v );
16272   ENTER_GL();
16273   func_glVertexAttribI2uiv( index, v );
16274   LEAVE_GL();
16275 }
16276
16277 static void WINAPI wine_glVertexAttribI2uivEXT( GLuint index, GLuint* v ) {
16278   void (*func_glVertexAttribI2uivEXT)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttribI2uivEXT];
16279   TRACE("(%d, %p)\n", index, v );
16280   ENTER_GL();
16281   func_glVertexAttribI2uivEXT( index, v );
16282   LEAVE_GL();
16283 }
16284
16285 static void WINAPI wine_glVertexAttribI3i( GLuint index, GLint x, GLint y, GLint z ) {
16286   void (*func_glVertexAttribI3i)( GLuint, GLint, GLint, GLint ) = extension_funcs[EXT_glVertexAttribI3i];
16287   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
16288   ENTER_GL();
16289   func_glVertexAttribI3i( index, x, y, z );
16290   LEAVE_GL();
16291 }
16292
16293 static void WINAPI wine_glVertexAttribI3iEXT( GLuint index, GLint x, GLint y, GLint z ) {
16294   void (*func_glVertexAttribI3iEXT)( GLuint, GLint, GLint, GLint ) = extension_funcs[EXT_glVertexAttribI3iEXT];
16295   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
16296   ENTER_GL();
16297   func_glVertexAttribI3iEXT( index, x, y, z );
16298   LEAVE_GL();
16299 }
16300
16301 static void WINAPI wine_glVertexAttribI3iv( GLuint index, GLint* v ) {
16302   void (*func_glVertexAttribI3iv)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttribI3iv];
16303   TRACE("(%d, %p)\n", index, v );
16304   ENTER_GL();
16305   func_glVertexAttribI3iv( index, v );
16306   LEAVE_GL();
16307 }
16308
16309 static void WINAPI wine_glVertexAttribI3ivEXT( GLuint index, GLint* v ) {
16310   void (*func_glVertexAttribI3ivEXT)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttribI3ivEXT];
16311   TRACE("(%d, %p)\n", index, v );
16312   ENTER_GL();
16313   func_glVertexAttribI3ivEXT( index, v );
16314   LEAVE_GL();
16315 }
16316
16317 static void WINAPI wine_glVertexAttribI3ui( GLuint index, GLuint x, GLuint y, GLuint z ) {
16318   void (*func_glVertexAttribI3ui)( GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribI3ui];
16319   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
16320   ENTER_GL();
16321   func_glVertexAttribI3ui( index, x, y, z );
16322   LEAVE_GL();
16323 }
16324
16325 static void WINAPI wine_glVertexAttribI3uiEXT( GLuint index, GLuint x, GLuint y, GLuint z ) {
16326   void (*func_glVertexAttribI3uiEXT)( GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribI3uiEXT];
16327   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
16328   ENTER_GL();
16329   func_glVertexAttribI3uiEXT( index, x, y, z );
16330   LEAVE_GL();
16331 }
16332
16333 static void WINAPI wine_glVertexAttribI3uiv( GLuint index, GLuint* v ) {
16334   void (*func_glVertexAttribI3uiv)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttribI3uiv];
16335   TRACE("(%d, %p)\n", index, v );
16336   ENTER_GL();
16337   func_glVertexAttribI3uiv( index, v );
16338   LEAVE_GL();
16339 }
16340
16341 static void WINAPI wine_glVertexAttribI3uivEXT( GLuint index, GLuint* v ) {
16342   void (*func_glVertexAttribI3uivEXT)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttribI3uivEXT];
16343   TRACE("(%d, %p)\n", index, v );
16344   ENTER_GL();
16345   func_glVertexAttribI3uivEXT( index, v );
16346   LEAVE_GL();
16347 }
16348
16349 static void WINAPI wine_glVertexAttribI4bv( GLuint index, GLbyte* v ) {
16350   void (*func_glVertexAttribI4bv)( GLuint, GLbyte* ) = extension_funcs[EXT_glVertexAttribI4bv];
16351   TRACE("(%d, %p)\n", index, v );
16352   ENTER_GL();
16353   func_glVertexAttribI4bv( index, v );
16354   LEAVE_GL();
16355 }
16356
16357 static void WINAPI wine_glVertexAttribI4bvEXT( GLuint index, GLbyte* v ) {
16358   void (*func_glVertexAttribI4bvEXT)( GLuint, GLbyte* ) = extension_funcs[EXT_glVertexAttribI4bvEXT];
16359   TRACE("(%d, %p)\n", index, v );
16360   ENTER_GL();
16361   func_glVertexAttribI4bvEXT( index, v );
16362   LEAVE_GL();
16363 }
16364
16365 static void WINAPI wine_glVertexAttribI4i( GLuint index, GLint x, GLint y, GLint z, GLint w ) {
16366   void (*func_glVertexAttribI4i)( GLuint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glVertexAttribI4i];
16367   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
16368   ENTER_GL();
16369   func_glVertexAttribI4i( index, x, y, z, w );
16370   LEAVE_GL();
16371 }
16372
16373 static void WINAPI wine_glVertexAttribI4iEXT( GLuint index, GLint x, GLint y, GLint z, GLint w ) {
16374   void (*func_glVertexAttribI4iEXT)( GLuint, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glVertexAttribI4iEXT];
16375   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
16376   ENTER_GL();
16377   func_glVertexAttribI4iEXT( index, x, y, z, w );
16378   LEAVE_GL();
16379 }
16380
16381 static void WINAPI wine_glVertexAttribI4iv( GLuint index, GLint* v ) {
16382   void (*func_glVertexAttribI4iv)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttribI4iv];
16383   TRACE("(%d, %p)\n", index, v );
16384   ENTER_GL();
16385   func_glVertexAttribI4iv( index, v );
16386   LEAVE_GL();
16387 }
16388
16389 static void WINAPI wine_glVertexAttribI4ivEXT( GLuint index, GLint* v ) {
16390   void (*func_glVertexAttribI4ivEXT)( GLuint, GLint* ) = extension_funcs[EXT_glVertexAttribI4ivEXT];
16391   TRACE("(%d, %p)\n", index, v );
16392   ENTER_GL();
16393   func_glVertexAttribI4ivEXT( index, v );
16394   LEAVE_GL();
16395 }
16396
16397 static void WINAPI wine_glVertexAttribI4sv( GLuint index, GLshort* v ) {
16398   void (*func_glVertexAttribI4sv)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttribI4sv];
16399   TRACE("(%d, %p)\n", index, v );
16400   ENTER_GL();
16401   func_glVertexAttribI4sv( index, v );
16402   LEAVE_GL();
16403 }
16404
16405 static void WINAPI wine_glVertexAttribI4svEXT( GLuint index, GLshort* v ) {
16406   void (*func_glVertexAttribI4svEXT)( GLuint, GLshort* ) = extension_funcs[EXT_glVertexAttribI4svEXT];
16407   TRACE("(%d, %p)\n", index, v );
16408   ENTER_GL();
16409   func_glVertexAttribI4svEXT( index, v );
16410   LEAVE_GL();
16411 }
16412
16413 static void WINAPI wine_glVertexAttribI4ubv( GLuint index, GLubyte* v ) {
16414   void (*func_glVertexAttribI4ubv)( GLuint, GLubyte* ) = extension_funcs[EXT_glVertexAttribI4ubv];
16415   TRACE("(%d, %p)\n", index, v );
16416   ENTER_GL();
16417   func_glVertexAttribI4ubv( index, v );
16418   LEAVE_GL();
16419 }
16420
16421 static void WINAPI wine_glVertexAttribI4ubvEXT( GLuint index, GLubyte* v ) {
16422   void (*func_glVertexAttribI4ubvEXT)( GLuint, GLubyte* ) = extension_funcs[EXT_glVertexAttribI4ubvEXT];
16423   TRACE("(%d, %p)\n", index, v );
16424   ENTER_GL();
16425   func_glVertexAttribI4ubvEXT( index, v );
16426   LEAVE_GL();
16427 }
16428
16429 static void WINAPI wine_glVertexAttribI4ui( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
16430   void (*func_glVertexAttribI4ui)( GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribI4ui];
16431   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
16432   ENTER_GL();
16433   func_glVertexAttribI4ui( index, x, y, z, w );
16434   LEAVE_GL();
16435 }
16436
16437 static void WINAPI wine_glVertexAttribI4uiEXT( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
16438   void (*func_glVertexAttribI4uiEXT)( GLuint, GLuint, GLuint, GLuint, GLuint ) = extension_funcs[EXT_glVertexAttribI4uiEXT];
16439   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
16440   ENTER_GL();
16441   func_glVertexAttribI4uiEXT( index, x, y, z, w );
16442   LEAVE_GL();
16443 }
16444
16445 static void WINAPI wine_glVertexAttribI4uiv( GLuint index, GLuint* v ) {
16446   void (*func_glVertexAttribI4uiv)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttribI4uiv];
16447   TRACE("(%d, %p)\n", index, v );
16448   ENTER_GL();
16449   func_glVertexAttribI4uiv( index, v );
16450   LEAVE_GL();
16451 }
16452
16453 static void WINAPI wine_glVertexAttribI4uivEXT( GLuint index, GLuint* v ) {
16454   void (*func_glVertexAttribI4uivEXT)( GLuint, GLuint* ) = extension_funcs[EXT_glVertexAttribI4uivEXT];
16455   TRACE("(%d, %p)\n", index, v );
16456   ENTER_GL();
16457   func_glVertexAttribI4uivEXT( index, v );
16458   LEAVE_GL();
16459 }
16460
16461 static void WINAPI wine_glVertexAttribI4usv( GLuint index, GLushort* v ) {
16462   void (*func_glVertexAttribI4usv)( GLuint, GLushort* ) = extension_funcs[EXT_glVertexAttribI4usv];
16463   TRACE("(%d, %p)\n", index, v );
16464   ENTER_GL();
16465   func_glVertexAttribI4usv( index, v );
16466   LEAVE_GL();
16467 }
16468
16469 static void WINAPI wine_glVertexAttribI4usvEXT( GLuint index, GLushort* v ) {
16470   void (*func_glVertexAttribI4usvEXT)( GLuint, GLushort* ) = extension_funcs[EXT_glVertexAttribI4usvEXT];
16471   TRACE("(%d, %p)\n", index, v );
16472   ENTER_GL();
16473   func_glVertexAttribI4usvEXT( index, v );
16474   LEAVE_GL();
16475 }
16476
16477 static void WINAPI wine_glVertexAttribIFormatNV( GLuint index, GLint size, GLenum type, GLsizei stride ) {
16478   void (*func_glVertexAttribIFormatNV)( GLuint, GLint, GLenum, GLsizei ) = extension_funcs[EXT_glVertexAttribIFormatNV];
16479   TRACE("(%d, %d, %d, %d)\n", index, size, type, stride );
16480   ENTER_GL();
16481   func_glVertexAttribIFormatNV( index, size, type, stride );
16482   LEAVE_GL();
16483 }
16484
16485 static void WINAPI wine_glVertexAttribIPointer( GLuint index, GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
16486   void (*func_glVertexAttribIPointer)( GLuint, GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexAttribIPointer];
16487   TRACE("(%d, %d, %d, %d, %p)\n", index, size, type, stride, pointer );
16488   ENTER_GL();
16489   func_glVertexAttribIPointer( index, size, type, stride, pointer );
16490   LEAVE_GL();
16491 }
16492
16493 static void WINAPI wine_glVertexAttribIPointerEXT( GLuint index, GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
16494   void (*func_glVertexAttribIPointerEXT)( GLuint, GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexAttribIPointerEXT];
16495   TRACE("(%d, %d, %d, %d, %p)\n", index, size, type, stride, pointer );
16496   ENTER_GL();
16497   func_glVertexAttribIPointerEXT( index, size, type, stride, pointer );
16498   LEAVE_GL();
16499 }
16500
16501 static void WINAPI wine_glVertexAttribL1d( GLuint index, GLdouble x ) {
16502   void (*func_glVertexAttribL1d)( GLuint, GLdouble ) = extension_funcs[EXT_glVertexAttribL1d];
16503   TRACE("(%d, %f)\n", index, x );
16504   ENTER_GL();
16505   func_glVertexAttribL1d( index, x );
16506   LEAVE_GL();
16507 }
16508
16509 static void WINAPI wine_glVertexAttribL1dEXT( GLuint index, GLdouble x ) {
16510   void (*func_glVertexAttribL1dEXT)( GLuint, GLdouble ) = extension_funcs[EXT_glVertexAttribL1dEXT];
16511   TRACE("(%d, %f)\n", index, x );
16512   ENTER_GL();
16513   func_glVertexAttribL1dEXT( index, x );
16514   LEAVE_GL();
16515 }
16516
16517 static void WINAPI wine_glVertexAttribL1dv( GLuint index, GLdouble* v ) {
16518   void (*func_glVertexAttribL1dv)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttribL1dv];
16519   TRACE("(%d, %p)\n", index, v );
16520   ENTER_GL();
16521   func_glVertexAttribL1dv( index, v );
16522   LEAVE_GL();
16523 }
16524
16525 static void WINAPI wine_glVertexAttribL1dvEXT( GLuint index, GLdouble* v ) {
16526   void (*func_glVertexAttribL1dvEXT)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttribL1dvEXT];
16527   TRACE("(%d, %p)\n", index, v );
16528   ENTER_GL();
16529   func_glVertexAttribL1dvEXT( index, v );
16530   LEAVE_GL();
16531 }
16532
16533 static void WINAPI wine_glVertexAttribL1i64NV( GLuint index, INT64 x ) {
16534   void (*func_glVertexAttribL1i64NV)( GLuint, INT64 ) = extension_funcs[EXT_glVertexAttribL1i64NV];
16535   TRACE("(%d, %s)\n", index, wine_dbgstr_longlong(x) );
16536   ENTER_GL();
16537   func_glVertexAttribL1i64NV( index, x );
16538   LEAVE_GL();
16539 }
16540
16541 static void WINAPI wine_glVertexAttribL1i64vNV( GLuint index, INT64* v ) {
16542   void (*func_glVertexAttribL1i64vNV)( GLuint, INT64* ) = extension_funcs[EXT_glVertexAttribL1i64vNV];
16543   TRACE("(%d, %p)\n", index, v );
16544   ENTER_GL();
16545   func_glVertexAttribL1i64vNV( index, v );
16546   LEAVE_GL();
16547 }
16548
16549 static void WINAPI wine_glVertexAttribL1ui64NV( GLuint index, UINT64 x ) {
16550   void (*func_glVertexAttribL1ui64NV)( GLuint, UINT64 ) = extension_funcs[EXT_glVertexAttribL1ui64NV];
16551   TRACE("(%d, %s)\n", index, wine_dbgstr_longlong(x) );
16552   ENTER_GL();
16553   func_glVertexAttribL1ui64NV( index, x );
16554   LEAVE_GL();
16555 }
16556
16557 static void WINAPI wine_glVertexAttribL1ui64vNV( GLuint index, UINT64* v ) {
16558   void (*func_glVertexAttribL1ui64vNV)( GLuint, UINT64* ) = extension_funcs[EXT_glVertexAttribL1ui64vNV];
16559   TRACE("(%d, %p)\n", index, v );
16560   ENTER_GL();
16561   func_glVertexAttribL1ui64vNV( index, v );
16562   LEAVE_GL();
16563 }
16564
16565 static void WINAPI wine_glVertexAttribL2d( GLuint index, GLdouble x, GLdouble y ) {
16566   void (*func_glVertexAttribL2d)( GLuint, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttribL2d];
16567   TRACE("(%d, %f, %f)\n", index, x, y );
16568   ENTER_GL();
16569   func_glVertexAttribL2d( index, x, y );
16570   LEAVE_GL();
16571 }
16572
16573 static void WINAPI wine_glVertexAttribL2dEXT( GLuint index, GLdouble x, GLdouble y ) {
16574   void (*func_glVertexAttribL2dEXT)( GLuint, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttribL2dEXT];
16575   TRACE("(%d, %f, %f)\n", index, x, y );
16576   ENTER_GL();
16577   func_glVertexAttribL2dEXT( index, x, y );
16578   LEAVE_GL();
16579 }
16580
16581 static void WINAPI wine_glVertexAttribL2dv( GLuint index, GLdouble* v ) {
16582   void (*func_glVertexAttribL2dv)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttribL2dv];
16583   TRACE("(%d, %p)\n", index, v );
16584   ENTER_GL();
16585   func_glVertexAttribL2dv( index, v );
16586   LEAVE_GL();
16587 }
16588
16589 static void WINAPI wine_glVertexAttribL2dvEXT( GLuint index, GLdouble* v ) {
16590   void (*func_glVertexAttribL2dvEXT)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttribL2dvEXT];
16591   TRACE("(%d, %p)\n", index, v );
16592   ENTER_GL();
16593   func_glVertexAttribL2dvEXT( index, v );
16594   LEAVE_GL();
16595 }
16596
16597 static void WINAPI wine_glVertexAttribL2i64NV( GLuint index, INT64 x, INT64 y ) {
16598   void (*func_glVertexAttribL2i64NV)( GLuint, INT64, INT64 ) = extension_funcs[EXT_glVertexAttribL2i64NV];
16599   TRACE("(%d, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
16600   ENTER_GL();
16601   func_glVertexAttribL2i64NV( index, x, y );
16602   LEAVE_GL();
16603 }
16604
16605 static void WINAPI wine_glVertexAttribL2i64vNV( GLuint index, INT64* v ) {
16606   void (*func_glVertexAttribL2i64vNV)( GLuint, INT64* ) = extension_funcs[EXT_glVertexAttribL2i64vNV];
16607   TRACE("(%d, %p)\n", index, v );
16608   ENTER_GL();
16609   func_glVertexAttribL2i64vNV( index, v );
16610   LEAVE_GL();
16611 }
16612
16613 static void WINAPI wine_glVertexAttribL2ui64NV( GLuint index, UINT64 x, UINT64 y ) {
16614   void (*func_glVertexAttribL2ui64NV)( GLuint, UINT64, UINT64 ) = extension_funcs[EXT_glVertexAttribL2ui64NV];
16615   TRACE("(%d, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
16616   ENTER_GL();
16617   func_glVertexAttribL2ui64NV( index, x, y );
16618   LEAVE_GL();
16619 }
16620
16621 static void WINAPI wine_glVertexAttribL2ui64vNV( GLuint index, UINT64* v ) {
16622   void (*func_glVertexAttribL2ui64vNV)( GLuint, UINT64* ) = extension_funcs[EXT_glVertexAttribL2ui64vNV];
16623   TRACE("(%d, %p)\n", index, v );
16624   ENTER_GL();
16625   func_glVertexAttribL2ui64vNV( index, v );
16626   LEAVE_GL();
16627 }
16628
16629 static void WINAPI wine_glVertexAttribL3d( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
16630   void (*func_glVertexAttribL3d)( GLuint, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttribL3d];
16631   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
16632   ENTER_GL();
16633   func_glVertexAttribL3d( index, x, y, z );
16634   LEAVE_GL();
16635 }
16636
16637 static void WINAPI wine_glVertexAttribL3dEXT( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
16638   void (*func_glVertexAttribL3dEXT)( GLuint, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttribL3dEXT];
16639   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
16640   ENTER_GL();
16641   func_glVertexAttribL3dEXT( index, x, y, z );
16642   LEAVE_GL();
16643 }
16644
16645 static void WINAPI wine_glVertexAttribL3dv( GLuint index, GLdouble* v ) {
16646   void (*func_glVertexAttribL3dv)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttribL3dv];
16647   TRACE("(%d, %p)\n", index, v );
16648   ENTER_GL();
16649   func_glVertexAttribL3dv( index, v );
16650   LEAVE_GL();
16651 }
16652
16653 static void WINAPI wine_glVertexAttribL3dvEXT( GLuint index, GLdouble* v ) {
16654   void (*func_glVertexAttribL3dvEXT)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttribL3dvEXT];
16655   TRACE("(%d, %p)\n", index, v );
16656   ENTER_GL();
16657   func_glVertexAttribL3dvEXT( index, v );
16658   LEAVE_GL();
16659 }
16660
16661 static void WINAPI wine_glVertexAttribL3i64NV( GLuint index, INT64 x, INT64 y, INT64 z ) {
16662   void (*func_glVertexAttribL3i64NV)( GLuint, INT64, INT64, INT64 ) = extension_funcs[EXT_glVertexAttribL3i64NV];
16663   TRACE("(%d, %s, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
16664   ENTER_GL();
16665   func_glVertexAttribL3i64NV( index, x, y, z );
16666   LEAVE_GL();
16667 }
16668
16669 static void WINAPI wine_glVertexAttribL3i64vNV( GLuint index, INT64* v ) {
16670   void (*func_glVertexAttribL3i64vNV)( GLuint, INT64* ) = extension_funcs[EXT_glVertexAttribL3i64vNV];
16671   TRACE("(%d, %p)\n", index, v );
16672   ENTER_GL();
16673   func_glVertexAttribL3i64vNV( index, v );
16674   LEAVE_GL();
16675 }
16676
16677 static void WINAPI wine_glVertexAttribL3ui64NV( GLuint index, UINT64 x, UINT64 y, UINT64 z ) {
16678   void (*func_glVertexAttribL3ui64NV)( GLuint, UINT64, UINT64, UINT64 ) = extension_funcs[EXT_glVertexAttribL3ui64NV];
16679   TRACE("(%d, %s, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
16680   ENTER_GL();
16681   func_glVertexAttribL3ui64NV( index, x, y, z );
16682   LEAVE_GL();
16683 }
16684
16685 static void WINAPI wine_glVertexAttribL3ui64vNV( GLuint index, UINT64* v ) {
16686   void (*func_glVertexAttribL3ui64vNV)( GLuint, UINT64* ) = extension_funcs[EXT_glVertexAttribL3ui64vNV];
16687   TRACE("(%d, %p)\n", index, v );
16688   ENTER_GL();
16689   func_glVertexAttribL3ui64vNV( index, v );
16690   LEAVE_GL();
16691 }
16692
16693 static void WINAPI wine_glVertexAttribL4d( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
16694   void (*func_glVertexAttribL4d)( GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttribL4d];
16695   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
16696   ENTER_GL();
16697   func_glVertexAttribL4d( index, x, y, z, w );
16698   LEAVE_GL();
16699 }
16700
16701 static void WINAPI wine_glVertexAttribL4dEXT( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
16702   void (*func_glVertexAttribL4dEXT)( GLuint, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexAttribL4dEXT];
16703   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
16704   ENTER_GL();
16705   func_glVertexAttribL4dEXT( index, x, y, z, w );
16706   LEAVE_GL();
16707 }
16708
16709 static void WINAPI wine_glVertexAttribL4dv( GLuint index, GLdouble* v ) {
16710   void (*func_glVertexAttribL4dv)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttribL4dv];
16711   TRACE("(%d, %p)\n", index, v );
16712   ENTER_GL();
16713   func_glVertexAttribL4dv( index, v );
16714   LEAVE_GL();
16715 }
16716
16717 static void WINAPI wine_glVertexAttribL4dvEXT( GLuint index, GLdouble* v ) {
16718   void (*func_glVertexAttribL4dvEXT)( GLuint, GLdouble* ) = extension_funcs[EXT_glVertexAttribL4dvEXT];
16719   TRACE("(%d, %p)\n", index, v );
16720   ENTER_GL();
16721   func_glVertexAttribL4dvEXT( index, v );
16722   LEAVE_GL();
16723 }
16724
16725 static void WINAPI wine_glVertexAttribL4i64NV( GLuint index, INT64 x, INT64 y, INT64 z, INT64 w ) {
16726   void (*func_glVertexAttribL4i64NV)( GLuint, INT64, INT64, INT64, INT64 ) = extension_funcs[EXT_glVertexAttribL4i64NV];
16727   TRACE("(%d, %s, %s, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
16728   ENTER_GL();
16729   func_glVertexAttribL4i64NV( index, x, y, z, w );
16730   LEAVE_GL();
16731 }
16732
16733 static void WINAPI wine_glVertexAttribL4i64vNV( GLuint index, INT64* v ) {
16734   void (*func_glVertexAttribL4i64vNV)( GLuint, INT64* ) = extension_funcs[EXT_glVertexAttribL4i64vNV];
16735   TRACE("(%d, %p)\n", index, v );
16736   ENTER_GL();
16737   func_glVertexAttribL4i64vNV( index, v );
16738   LEAVE_GL();
16739 }
16740
16741 static void WINAPI wine_glVertexAttribL4ui64NV( GLuint index, UINT64 x, UINT64 y, UINT64 z, UINT64 w ) {
16742   void (*func_glVertexAttribL4ui64NV)( GLuint, UINT64, UINT64, UINT64, UINT64 ) = extension_funcs[EXT_glVertexAttribL4ui64NV];
16743   TRACE("(%d, %s, %s, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
16744   ENTER_GL();
16745   func_glVertexAttribL4ui64NV( index, x, y, z, w );
16746   LEAVE_GL();
16747 }
16748
16749 static void WINAPI wine_glVertexAttribL4ui64vNV( GLuint index, UINT64* v ) {
16750   void (*func_glVertexAttribL4ui64vNV)( GLuint, UINT64* ) = extension_funcs[EXT_glVertexAttribL4ui64vNV];
16751   TRACE("(%d, %p)\n", index, v );
16752   ENTER_GL();
16753   func_glVertexAttribL4ui64vNV( index, v );
16754   LEAVE_GL();
16755 }
16756
16757 static void WINAPI wine_glVertexAttribLFormatNV( GLuint index, GLint size, GLenum type, GLsizei stride ) {
16758   void (*func_glVertexAttribLFormatNV)( GLuint, GLint, GLenum, GLsizei ) = extension_funcs[EXT_glVertexAttribLFormatNV];
16759   TRACE("(%d, %d, %d, %d)\n", index, size, type, stride );
16760   ENTER_GL();
16761   func_glVertexAttribLFormatNV( index, size, type, stride );
16762   LEAVE_GL();
16763 }
16764
16765 static void WINAPI wine_glVertexAttribLPointer( GLuint index, GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
16766   void (*func_glVertexAttribLPointer)( GLuint, GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexAttribLPointer];
16767   TRACE("(%d, %d, %d, %d, %p)\n", index, size, type, stride, pointer );
16768   ENTER_GL();
16769   func_glVertexAttribLPointer( index, size, type, stride, pointer );
16770   LEAVE_GL();
16771 }
16772
16773 static void WINAPI wine_glVertexAttribLPointerEXT( GLuint index, GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
16774   void (*func_glVertexAttribLPointerEXT)( GLuint, GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexAttribLPointerEXT];
16775   TRACE("(%d, %d, %d, %d, %p)\n", index, size, type, stride, pointer );
16776   ENTER_GL();
16777   func_glVertexAttribLPointerEXT( index, size, type, stride, pointer );
16778   LEAVE_GL();
16779 }
16780
16781 static void WINAPI wine_glVertexAttribP1ui( GLuint index, GLenum type, GLboolean normalized, GLuint value ) {
16782   void (*func_glVertexAttribP1ui)( GLuint, GLenum, GLboolean, GLuint ) = extension_funcs[EXT_glVertexAttribP1ui];
16783   TRACE("(%d, %d, %d, %d)\n", index, type, normalized, value );
16784   ENTER_GL();
16785   func_glVertexAttribP1ui( index, type, normalized, value );
16786   LEAVE_GL();
16787 }
16788
16789 static void WINAPI wine_glVertexAttribP1uiv( GLuint index, GLenum type, GLboolean normalized, GLuint* value ) {
16790   void (*func_glVertexAttribP1uiv)( GLuint, GLenum, GLboolean, GLuint* ) = extension_funcs[EXT_glVertexAttribP1uiv];
16791   TRACE("(%d, %d, %d, %p)\n", index, type, normalized, value );
16792   ENTER_GL();
16793   func_glVertexAttribP1uiv( index, type, normalized, value );
16794   LEAVE_GL();
16795 }
16796
16797 static void WINAPI wine_glVertexAttribP2ui( GLuint index, GLenum type, GLboolean normalized, GLuint value ) {
16798   void (*func_glVertexAttribP2ui)( GLuint, GLenum, GLboolean, GLuint ) = extension_funcs[EXT_glVertexAttribP2ui];
16799   TRACE("(%d, %d, %d, %d)\n", index, type, normalized, value );
16800   ENTER_GL();
16801   func_glVertexAttribP2ui( index, type, normalized, value );
16802   LEAVE_GL();
16803 }
16804
16805 static void WINAPI wine_glVertexAttribP2uiv( GLuint index, GLenum type, GLboolean normalized, GLuint* value ) {
16806   void (*func_glVertexAttribP2uiv)( GLuint, GLenum, GLboolean, GLuint* ) = extension_funcs[EXT_glVertexAttribP2uiv];
16807   TRACE("(%d, %d, %d, %p)\n", index, type, normalized, value );
16808   ENTER_GL();
16809   func_glVertexAttribP2uiv( index, type, normalized, value );
16810   LEAVE_GL();
16811 }
16812
16813 static void WINAPI wine_glVertexAttribP3ui( GLuint index, GLenum type, GLboolean normalized, GLuint value ) {
16814   void (*func_glVertexAttribP3ui)( GLuint, GLenum, GLboolean, GLuint ) = extension_funcs[EXT_glVertexAttribP3ui];
16815   TRACE("(%d, %d, %d, %d)\n", index, type, normalized, value );
16816   ENTER_GL();
16817   func_glVertexAttribP3ui( index, type, normalized, value );
16818   LEAVE_GL();
16819 }
16820
16821 static void WINAPI wine_glVertexAttribP3uiv( GLuint index, GLenum type, GLboolean normalized, GLuint* value ) {
16822   void (*func_glVertexAttribP3uiv)( GLuint, GLenum, GLboolean, GLuint* ) = extension_funcs[EXT_glVertexAttribP3uiv];
16823   TRACE("(%d, %d, %d, %p)\n", index, type, normalized, value );
16824   ENTER_GL();
16825   func_glVertexAttribP3uiv( index, type, normalized, value );
16826   LEAVE_GL();
16827 }
16828
16829 static void WINAPI wine_glVertexAttribP4ui( GLuint index, GLenum type, GLboolean normalized, GLuint value ) {
16830   void (*func_glVertexAttribP4ui)( GLuint, GLenum, GLboolean, GLuint ) = extension_funcs[EXT_glVertexAttribP4ui];
16831   TRACE("(%d, %d, %d, %d)\n", index, type, normalized, value );
16832   ENTER_GL();
16833   func_glVertexAttribP4ui( index, type, normalized, value );
16834   LEAVE_GL();
16835 }
16836
16837 static void WINAPI wine_glVertexAttribP4uiv( GLuint index, GLenum type, GLboolean normalized, GLuint* value ) {
16838   void (*func_glVertexAttribP4uiv)( GLuint, GLenum, GLboolean, GLuint* ) = extension_funcs[EXT_glVertexAttribP4uiv];
16839   TRACE("(%d, %d, %d, %p)\n", index, type, normalized, value );
16840   ENTER_GL();
16841   func_glVertexAttribP4uiv( index, type, normalized, value );
16842   LEAVE_GL();
16843 }
16844
16845 static void WINAPI wine_glVertexAttribPointer( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLvoid* pointer ) {
16846   void (*func_glVertexAttribPointer)( GLuint, GLint, GLenum, GLboolean, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexAttribPointer];
16847   TRACE("(%d, %d, %d, %d, %d, %p)\n", index, size, type, normalized, stride, pointer );
16848   ENTER_GL();
16849   func_glVertexAttribPointer( index, size, type, normalized, stride, pointer );
16850   LEAVE_GL();
16851 }
16852
16853 static void WINAPI wine_glVertexAttribPointerARB( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLvoid* pointer ) {
16854   void (*func_glVertexAttribPointerARB)( GLuint, GLint, GLenum, GLboolean, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexAttribPointerARB];
16855   TRACE("(%d, %d, %d, %d, %d, %p)\n", index, size, type, normalized, stride, pointer );
16856   ENTER_GL();
16857   func_glVertexAttribPointerARB( index, size, type, normalized, stride, pointer );
16858   LEAVE_GL();
16859 }
16860
16861 static void WINAPI wine_glVertexAttribPointerNV( GLuint index, GLint fsize, GLenum type, GLsizei stride, GLvoid* pointer ) {
16862   void (*func_glVertexAttribPointerNV)( GLuint, GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexAttribPointerNV];
16863   TRACE("(%d, %d, %d, %d, %p)\n", index, fsize, type, stride, pointer );
16864   ENTER_GL();
16865   func_glVertexAttribPointerNV( index, fsize, type, stride, pointer );
16866   LEAVE_GL();
16867 }
16868
16869 static void WINAPI wine_glVertexAttribs1dvNV( GLuint index, GLsizei count, GLdouble* v ) {
16870   void (*func_glVertexAttribs1dvNV)( GLuint, GLsizei, GLdouble* ) = extension_funcs[EXT_glVertexAttribs1dvNV];
16871   TRACE("(%d, %d, %p)\n", index, count, v );
16872   ENTER_GL();
16873   func_glVertexAttribs1dvNV( index, count, v );
16874   LEAVE_GL();
16875 }
16876
16877 static void WINAPI wine_glVertexAttribs1fvNV( GLuint index, GLsizei count, GLfloat* v ) {
16878   void (*func_glVertexAttribs1fvNV)( GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glVertexAttribs1fvNV];
16879   TRACE("(%d, %d, %p)\n", index, count, v );
16880   ENTER_GL();
16881   func_glVertexAttribs1fvNV( index, count, v );
16882   LEAVE_GL();
16883 }
16884
16885 static void WINAPI wine_glVertexAttribs1hvNV( GLuint index, GLsizei n, unsigned short* v ) {
16886   void (*func_glVertexAttribs1hvNV)( GLuint, GLsizei, unsigned short* ) = extension_funcs[EXT_glVertexAttribs1hvNV];
16887   TRACE("(%d, %d, %p)\n", index, n, v );
16888   ENTER_GL();
16889   func_glVertexAttribs1hvNV( index, n, v );
16890   LEAVE_GL();
16891 }
16892
16893 static void WINAPI wine_glVertexAttribs1svNV( GLuint index, GLsizei count, GLshort* v ) {
16894   void (*func_glVertexAttribs1svNV)( GLuint, GLsizei, GLshort* ) = extension_funcs[EXT_glVertexAttribs1svNV];
16895   TRACE("(%d, %d, %p)\n", index, count, v );
16896   ENTER_GL();
16897   func_glVertexAttribs1svNV( index, count, v );
16898   LEAVE_GL();
16899 }
16900
16901 static void WINAPI wine_glVertexAttribs2dvNV( GLuint index, GLsizei count, GLdouble* v ) {
16902   void (*func_glVertexAttribs2dvNV)( GLuint, GLsizei, GLdouble* ) = extension_funcs[EXT_glVertexAttribs2dvNV];
16903   TRACE("(%d, %d, %p)\n", index, count, v );
16904   ENTER_GL();
16905   func_glVertexAttribs2dvNV( index, count, v );
16906   LEAVE_GL();
16907 }
16908
16909 static void WINAPI wine_glVertexAttribs2fvNV( GLuint index, GLsizei count, GLfloat* v ) {
16910   void (*func_glVertexAttribs2fvNV)( GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glVertexAttribs2fvNV];
16911   TRACE("(%d, %d, %p)\n", index, count, v );
16912   ENTER_GL();
16913   func_glVertexAttribs2fvNV( index, count, v );
16914   LEAVE_GL();
16915 }
16916
16917 static void WINAPI wine_glVertexAttribs2hvNV( GLuint index, GLsizei n, unsigned short* v ) {
16918   void (*func_glVertexAttribs2hvNV)( GLuint, GLsizei, unsigned short* ) = extension_funcs[EXT_glVertexAttribs2hvNV];
16919   TRACE("(%d, %d, %p)\n", index, n, v );
16920   ENTER_GL();
16921   func_glVertexAttribs2hvNV( index, n, v );
16922   LEAVE_GL();
16923 }
16924
16925 static void WINAPI wine_glVertexAttribs2svNV( GLuint index, GLsizei count, GLshort* v ) {
16926   void (*func_glVertexAttribs2svNV)( GLuint, GLsizei, GLshort* ) = extension_funcs[EXT_glVertexAttribs2svNV];
16927   TRACE("(%d, %d, %p)\n", index, count, v );
16928   ENTER_GL();
16929   func_glVertexAttribs2svNV( index, count, v );
16930   LEAVE_GL();
16931 }
16932
16933 static void WINAPI wine_glVertexAttribs3dvNV( GLuint index, GLsizei count, GLdouble* v ) {
16934   void (*func_glVertexAttribs3dvNV)( GLuint, GLsizei, GLdouble* ) = extension_funcs[EXT_glVertexAttribs3dvNV];
16935   TRACE("(%d, %d, %p)\n", index, count, v );
16936   ENTER_GL();
16937   func_glVertexAttribs3dvNV( index, count, v );
16938   LEAVE_GL();
16939 }
16940
16941 static void WINAPI wine_glVertexAttribs3fvNV( GLuint index, GLsizei count, GLfloat* v ) {
16942   void (*func_glVertexAttribs3fvNV)( GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glVertexAttribs3fvNV];
16943   TRACE("(%d, %d, %p)\n", index, count, v );
16944   ENTER_GL();
16945   func_glVertexAttribs3fvNV( index, count, v );
16946   LEAVE_GL();
16947 }
16948
16949 static void WINAPI wine_glVertexAttribs3hvNV( GLuint index, GLsizei n, unsigned short* v ) {
16950   void (*func_glVertexAttribs3hvNV)( GLuint, GLsizei, unsigned short* ) = extension_funcs[EXT_glVertexAttribs3hvNV];
16951   TRACE("(%d, %d, %p)\n", index, n, v );
16952   ENTER_GL();
16953   func_glVertexAttribs3hvNV( index, n, v );
16954   LEAVE_GL();
16955 }
16956
16957 static void WINAPI wine_glVertexAttribs3svNV( GLuint index, GLsizei count, GLshort* v ) {
16958   void (*func_glVertexAttribs3svNV)( GLuint, GLsizei, GLshort* ) = extension_funcs[EXT_glVertexAttribs3svNV];
16959   TRACE("(%d, %d, %p)\n", index, count, v );
16960   ENTER_GL();
16961   func_glVertexAttribs3svNV( index, count, v );
16962   LEAVE_GL();
16963 }
16964
16965 static void WINAPI wine_glVertexAttribs4dvNV( GLuint index, GLsizei count, GLdouble* v ) {
16966   void (*func_glVertexAttribs4dvNV)( GLuint, GLsizei, GLdouble* ) = extension_funcs[EXT_glVertexAttribs4dvNV];
16967   TRACE("(%d, %d, %p)\n", index, count, v );
16968   ENTER_GL();
16969   func_glVertexAttribs4dvNV( index, count, v );
16970   LEAVE_GL();
16971 }
16972
16973 static void WINAPI wine_glVertexAttribs4fvNV( GLuint index, GLsizei count, GLfloat* v ) {
16974   void (*func_glVertexAttribs4fvNV)( GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glVertexAttribs4fvNV];
16975   TRACE("(%d, %d, %p)\n", index, count, v );
16976   ENTER_GL();
16977   func_glVertexAttribs4fvNV( index, count, v );
16978   LEAVE_GL();
16979 }
16980
16981 static void WINAPI wine_glVertexAttribs4hvNV( GLuint index, GLsizei n, unsigned short* v ) {
16982   void (*func_glVertexAttribs4hvNV)( GLuint, GLsizei, unsigned short* ) = extension_funcs[EXT_glVertexAttribs4hvNV];
16983   TRACE("(%d, %d, %p)\n", index, n, v );
16984   ENTER_GL();
16985   func_glVertexAttribs4hvNV( index, n, v );
16986   LEAVE_GL();
16987 }
16988
16989 static void WINAPI wine_glVertexAttribs4svNV( GLuint index, GLsizei count, GLshort* v ) {
16990   void (*func_glVertexAttribs4svNV)( GLuint, GLsizei, GLshort* ) = extension_funcs[EXT_glVertexAttribs4svNV];
16991   TRACE("(%d, %d, %p)\n", index, count, v );
16992   ENTER_GL();
16993   func_glVertexAttribs4svNV( index, count, v );
16994   LEAVE_GL();
16995 }
16996
16997 static void WINAPI wine_glVertexAttribs4ubvNV( GLuint index, GLsizei count, GLubyte* v ) {
16998   void (*func_glVertexAttribs4ubvNV)( GLuint, GLsizei, GLubyte* ) = extension_funcs[EXT_glVertexAttribs4ubvNV];
16999   TRACE("(%d, %d, %p)\n", index, count, v );
17000   ENTER_GL();
17001   func_glVertexAttribs4ubvNV( index, count, v );
17002   LEAVE_GL();
17003 }
17004
17005 static void WINAPI wine_glVertexBlendARB( GLint count ) {
17006   void (*func_glVertexBlendARB)( GLint ) = extension_funcs[EXT_glVertexBlendARB];
17007   TRACE("(%d)\n", count );
17008   ENTER_GL();
17009   func_glVertexBlendARB( count );
17010   LEAVE_GL();
17011 }
17012
17013 static void WINAPI wine_glVertexBlendEnvfATI( GLenum pname, GLfloat param ) {
17014   void (*func_glVertexBlendEnvfATI)( GLenum, GLfloat ) = extension_funcs[EXT_glVertexBlendEnvfATI];
17015   TRACE("(%d, %f)\n", pname, param );
17016   ENTER_GL();
17017   func_glVertexBlendEnvfATI( pname, param );
17018   LEAVE_GL();
17019 }
17020
17021 static void WINAPI wine_glVertexBlendEnviATI( GLenum pname, GLint param ) {
17022   void (*func_glVertexBlendEnviATI)( GLenum, GLint ) = extension_funcs[EXT_glVertexBlendEnviATI];
17023   TRACE("(%d, %d)\n", pname, param );
17024   ENTER_GL();
17025   func_glVertexBlendEnviATI( pname, param );
17026   LEAVE_GL();
17027 }
17028
17029 static void WINAPI wine_glVertexFormatNV( GLint size, GLenum type, GLsizei stride ) {
17030   void (*func_glVertexFormatNV)( GLint, GLenum, GLsizei ) = extension_funcs[EXT_glVertexFormatNV];
17031   TRACE("(%d, %d, %d)\n", size, type, stride );
17032   ENTER_GL();
17033   func_glVertexFormatNV( size, type, stride );
17034   LEAVE_GL();
17035 }
17036
17037 static void WINAPI wine_glVertexP2ui( GLenum type, GLuint value ) {
17038   void (*func_glVertexP2ui)( GLenum, GLuint ) = extension_funcs[EXT_glVertexP2ui];
17039   TRACE("(%d, %d)\n", type, value );
17040   ENTER_GL();
17041   func_glVertexP2ui( type, value );
17042   LEAVE_GL();
17043 }
17044
17045 static void WINAPI wine_glVertexP2uiv( GLenum type, GLuint* value ) {
17046   void (*func_glVertexP2uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glVertexP2uiv];
17047   TRACE("(%d, %p)\n", type, value );
17048   ENTER_GL();
17049   func_glVertexP2uiv( type, value );
17050   LEAVE_GL();
17051 }
17052
17053 static void WINAPI wine_glVertexP3ui( GLenum type, GLuint value ) {
17054   void (*func_glVertexP3ui)( GLenum, GLuint ) = extension_funcs[EXT_glVertexP3ui];
17055   TRACE("(%d, %d)\n", type, value );
17056   ENTER_GL();
17057   func_glVertexP3ui( type, value );
17058   LEAVE_GL();
17059 }
17060
17061 static void WINAPI wine_glVertexP3uiv( GLenum type, GLuint* value ) {
17062   void (*func_glVertexP3uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glVertexP3uiv];
17063   TRACE("(%d, %p)\n", type, value );
17064   ENTER_GL();
17065   func_glVertexP3uiv( type, value );
17066   LEAVE_GL();
17067 }
17068
17069 static void WINAPI wine_glVertexP4ui( GLenum type, GLuint value ) {
17070   void (*func_glVertexP4ui)( GLenum, GLuint ) = extension_funcs[EXT_glVertexP4ui];
17071   TRACE("(%d, %d)\n", type, value );
17072   ENTER_GL();
17073   func_glVertexP4ui( type, value );
17074   LEAVE_GL();
17075 }
17076
17077 static void WINAPI wine_glVertexP4uiv( GLenum type, GLuint* value ) {
17078   void (*func_glVertexP4uiv)( GLenum, GLuint* ) = extension_funcs[EXT_glVertexP4uiv];
17079   TRACE("(%d, %p)\n", type, value );
17080   ENTER_GL();
17081   func_glVertexP4uiv( type, value );
17082   LEAVE_GL();
17083 }
17084
17085 static void WINAPI wine_glVertexPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, GLvoid* pointer ) {
17086   void (*func_glVertexPointerEXT)( GLint, GLenum, GLsizei, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexPointerEXT];
17087   TRACE("(%d, %d, %d, %d, %p)\n", size, type, stride, count, pointer );
17088   ENTER_GL();
17089   func_glVertexPointerEXT( size, type, stride, count, pointer );
17090   LEAVE_GL();
17091 }
17092
17093 static void WINAPI wine_glVertexPointerListIBM( GLint size, GLenum type, GLint stride, GLvoid** pointer, GLint ptrstride ) {
17094   void (*func_glVertexPointerListIBM)( GLint, GLenum, GLint, GLvoid**, GLint ) = extension_funcs[EXT_glVertexPointerListIBM];
17095   TRACE("(%d, %d, %d, %p, %d)\n", size, type, stride, pointer, ptrstride );
17096   ENTER_GL();
17097   func_glVertexPointerListIBM( size, type, stride, pointer, ptrstride );
17098   LEAVE_GL();
17099 }
17100
17101 static void WINAPI wine_glVertexPointervINTEL( GLint size, GLenum type, GLvoid** pointer ) {
17102   void (*func_glVertexPointervINTEL)( GLint, GLenum, GLvoid** ) = extension_funcs[EXT_glVertexPointervINTEL];
17103   TRACE("(%d, %d, %p)\n", size, type, pointer );
17104   ENTER_GL();
17105   func_glVertexPointervINTEL( size, type, pointer );
17106   LEAVE_GL();
17107 }
17108
17109 static void WINAPI wine_glVertexStream1dATI( GLenum stream, GLdouble x ) {
17110   void (*func_glVertexStream1dATI)( GLenum, GLdouble ) = extension_funcs[EXT_glVertexStream1dATI];
17111   TRACE("(%d, %f)\n", stream, x );
17112   ENTER_GL();
17113   func_glVertexStream1dATI( stream, x );
17114   LEAVE_GL();
17115 }
17116
17117 static void WINAPI wine_glVertexStream1dvATI( GLenum stream, GLdouble* coords ) {
17118   void (*func_glVertexStream1dvATI)( GLenum, GLdouble* ) = extension_funcs[EXT_glVertexStream1dvATI];
17119   TRACE("(%d, %p)\n", stream, coords );
17120   ENTER_GL();
17121   func_glVertexStream1dvATI( stream, coords );
17122   LEAVE_GL();
17123 }
17124
17125 static void WINAPI wine_glVertexStream1fATI( GLenum stream, GLfloat x ) {
17126   void (*func_glVertexStream1fATI)( GLenum, GLfloat ) = extension_funcs[EXT_glVertexStream1fATI];
17127   TRACE("(%d, %f)\n", stream, x );
17128   ENTER_GL();
17129   func_glVertexStream1fATI( stream, x );
17130   LEAVE_GL();
17131 }
17132
17133 static void WINAPI wine_glVertexStream1fvATI( GLenum stream, GLfloat* coords ) {
17134   void (*func_glVertexStream1fvATI)( GLenum, GLfloat* ) = extension_funcs[EXT_glVertexStream1fvATI];
17135   TRACE("(%d, %p)\n", stream, coords );
17136   ENTER_GL();
17137   func_glVertexStream1fvATI( stream, coords );
17138   LEAVE_GL();
17139 }
17140
17141 static void WINAPI wine_glVertexStream1iATI( GLenum stream, GLint x ) {
17142   void (*func_glVertexStream1iATI)( GLenum, GLint ) = extension_funcs[EXT_glVertexStream1iATI];
17143   TRACE("(%d, %d)\n", stream, x );
17144   ENTER_GL();
17145   func_glVertexStream1iATI( stream, x );
17146   LEAVE_GL();
17147 }
17148
17149 static void WINAPI wine_glVertexStream1ivATI( GLenum stream, GLint* coords ) {
17150   void (*func_glVertexStream1ivATI)( GLenum, GLint* ) = extension_funcs[EXT_glVertexStream1ivATI];
17151   TRACE("(%d, %p)\n", stream, coords );
17152   ENTER_GL();
17153   func_glVertexStream1ivATI( stream, coords );
17154   LEAVE_GL();
17155 }
17156
17157 static void WINAPI wine_glVertexStream1sATI( GLenum stream, GLshort x ) {
17158   void (*func_glVertexStream1sATI)( GLenum, GLshort ) = extension_funcs[EXT_glVertexStream1sATI];
17159   TRACE("(%d, %d)\n", stream, x );
17160   ENTER_GL();
17161   func_glVertexStream1sATI( stream, x );
17162   LEAVE_GL();
17163 }
17164
17165 static void WINAPI wine_glVertexStream1svATI( GLenum stream, GLshort* coords ) {
17166   void (*func_glVertexStream1svATI)( GLenum, GLshort* ) = extension_funcs[EXT_glVertexStream1svATI];
17167   TRACE("(%d, %p)\n", stream, coords );
17168   ENTER_GL();
17169   func_glVertexStream1svATI( stream, coords );
17170   LEAVE_GL();
17171 }
17172
17173 static void WINAPI wine_glVertexStream2dATI( GLenum stream, GLdouble x, GLdouble y ) {
17174   void (*func_glVertexStream2dATI)( GLenum, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexStream2dATI];
17175   TRACE("(%d, %f, %f)\n", stream, x, y );
17176   ENTER_GL();
17177   func_glVertexStream2dATI( stream, x, y );
17178   LEAVE_GL();
17179 }
17180
17181 static void WINAPI wine_glVertexStream2dvATI( GLenum stream, GLdouble* coords ) {
17182   void (*func_glVertexStream2dvATI)( GLenum, GLdouble* ) = extension_funcs[EXT_glVertexStream2dvATI];
17183   TRACE("(%d, %p)\n", stream, coords );
17184   ENTER_GL();
17185   func_glVertexStream2dvATI( stream, coords );
17186   LEAVE_GL();
17187 }
17188
17189 static void WINAPI wine_glVertexStream2fATI( GLenum stream, GLfloat x, GLfloat y ) {
17190   void (*func_glVertexStream2fATI)( GLenum, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexStream2fATI];
17191   TRACE("(%d, %f, %f)\n", stream, x, y );
17192   ENTER_GL();
17193   func_glVertexStream2fATI( stream, x, y );
17194   LEAVE_GL();
17195 }
17196
17197 static void WINAPI wine_glVertexStream2fvATI( GLenum stream, GLfloat* coords ) {
17198   void (*func_glVertexStream2fvATI)( GLenum, GLfloat* ) = extension_funcs[EXT_glVertexStream2fvATI];
17199   TRACE("(%d, %p)\n", stream, coords );
17200   ENTER_GL();
17201   func_glVertexStream2fvATI( stream, coords );
17202   LEAVE_GL();
17203 }
17204
17205 static void WINAPI wine_glVertexStream2iATI( GLenum stream, GLint x, GLint y ) {
17206   void (*func_glVertexStream2iATI)( GLenum, GLint, GLint ) = extension_funcs[EXT_glVertexStream2iATI];
17207   TRACE("(%d, %d, %d)\n", stream, x, y );
17208   ENTER_GL();
17209   func_glVertexStream2iATI( stream, x, y );
17210   LEAVE_GL();
17211 }
17212
17213 static void WINAPI wine_glVertexStream2ivATI( GLenum stream, GLint* coords ) {
17214   void (*func_glVertexStream2ivATI)( GLenum, GLint* ) = extension_funcs[EXT_glVertexStream2ivATI];
17215   TRACE("(%d, %p)\n", stream, coords );
17216   ENTER_GL();
17217   func_glVertexStream2ivATI( stream, coords );
17218   LEAVE_GL();
17219 }
17220
17221 static void WINAPI wine_glVertexStream2sATI( GLenum stream, GLshort x, GLshort y ) {
17222   void (*func_glVertexStream2sATI)( GLenum, GLshort, GLshort ) = extension_funcs[EXT_glVertexStream2sATI];
17223   TRACE("(%d, %d, %d)\n", stream, x, y );
17224   ENTER_GL();
17225   func_glVertexStream2sATI( stream, x, y );
17226   LEAVE_GL();
17227 }
17228
17229 static void WINAPI wine_glVertexStream2svATI( GLenum stream, GLshort* coords ) {
17230   void (*func_glVertexStream2svATI)( GLenum, GLshort* ) = extension_funcs[EXT_glVertexStream2svATI];
17231   TRACE("(%d, %p)\n", stream, coords );
17232   ENTER_GL();
17233   func_glVertexStream2svATI( stream, coords );
17234   LEAVE_GL();
17235 }
17236
17237 static void WINAPI wine_glVertexStream3dATI( GLenum stream, GLdouble x, GLdouble y, GLdouble z ) {
17238   void (*func_glVertexStream3dATI)( GLenum, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexStream3dATI];
17239   TRACE("(%d, %f, %f, %f)\n", stream, x, y, z );
17240   ENTER_GL();
17241   func_glVertexStream3dATI( stream, x, y, z );
17242   LEAVE_GL();
17243 }
17244
17245 static void WINAPI wine_glVertexStream3dvATI( GLenum stream, GLdouble* coords ) {
17246   void (*func_glVertexStream3dvATI)( GLenum, GLdouble* ) = extension_funcs[EXT_glVertexStream3dvATI];
17247   TRACE("(%d, %p)\n", stream, coords );
17248   ENTER_GL();
17249   func_glVertexStream3dvATI( stream, coords );
17250   LEAVE_GL();
17251 }
17252
17253 static void WINAPI wine_glVertexStream3fATI( GLenum stream, GLfloat x, GLfloat y, GLfloat z ) {
17254   void (*func_glVertexStream3fATI)( GLenum, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexStream3fATI];
17255   TRACE("(%d, %f, %f, %f)\n", stream, x, y, z );
17256   ENTER_GL();
17257   func_glVertexStream3fATI( stream, x, y, z );
17258   LEAVE_GL();
17259 }
17260
17261 static void WINAPI wine_glVertexStream3fvATI( GLenum stream, GLfloat* coords ) {
17262   void (*func_glVertexStream3fvATI)( GLenum, GLfloat* ) = extension_funcs[EXT_glVertexStream3fvATI];
17263   TRACE("(%d, %p)\n", stream, coords );
17264   ENTER_GL();
17265   func_glVertexStream3fvATI( stream, coords );
17266   LEAVE_GL();
17267 }
17268
17269 static void WINAPI wine_glVertexStream3iATI( GLenum stream, GLint x, GLint y, GLint z ) {
17270   void (*func_glVertexStream3iATI)( GLenum, GLint, GLint, GLint ) = extension_funcs[EXT_glVertexStream3iATI];
17271   TRACE("(%d, %d, %d, %d)\n", stream, x, y, z );
17272   ENTER_GL();
17273   func_glVertexStream3iATI( stream, x, y, z );
17274   LEAVE_GL();
17275 }
17276
17277 static void WINAPI wine_glVertexStream3ivATI( GLenum stream, GLint* coords ) {
17278   void (*func_glVertexStream3ivATI)( GLenum, GLint* ) = extension_funcs[EXT_glVertexStream3ivATI];
17279   TRACE("(%d, %p)\n", stream, coords );
17280   ENTER_GL();
17281   func_glVertexStream3ivATI( stream, coords );
17282   LEAVE_GL();
17283 }
17284
17285 static void WINAPI wine_glVertexStream3sATI( GLenum stream, GLshort x, GLshort y, GLshort z ) {
17286   void (*func_glVertexStream3sATI)( GLenum, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glVertexStream3sATI];
17287   TRACE("(%d, %d, %d, %d)\n", stream, x, y, z );
17288   ENTER_GL();
17289   func_glVertexStream3sATI( stream, x, y, z );
17290   LEAVE_GL();
17291 }
17292
17293 static void WINAPI wine_glVertexStream3svATI( GLenum stream, GLshort* coords ) {
17294   void (*func_glVertexStream3svATI)( GLenum, GLshort* ) = extension_funcs[EXT_glVertexStream3svATI];
17295   TRACE("(%d, %p)\n", stream, coords );
17296   ENTER_GL();
17297   func_glVertexStream3svATI( stream, coords );
17298   LEAVE_GL();
17299 }
17300
17301 static void WINAPI wine_glVertexStream4dATI( GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
17302   void (*func_glVertexStream4dATI)( GLenum, GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glVertexStream4dATI];
17303   TRACE("(%d, %f, %f, %f, %f)\n", stream, x, y, z, w );
17304   ENTER_GL();
17305   func_glVertexStream4dATI( stream, x, y, z, w );
17306   LEAVE_GL();
17307 }
17308
17309 static void WINAPI wine_glVertexStream4dvATI( GLenum stream, GLdouble* coords ) {
17310   void (*func_glVertexStream4dvATI)( GLenum, GLdouble* ) = extension_funcs[EXT_glVertexStream4dvATI];
17311   TRACE("(%d, %p)\n", stream, coords );
17312   ENTER_GL();
17313   func_glVertexStream4dvATI( stream, coords );
17314   LEAVE_GL();
17315 }
17316
17317 static void WINAPI wine_glVertexStream4fATI( GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
17318   void (*func_glVertexStream4fATI)( GLenum, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glVertexStream4fATI];
17319   TRACE("(%d, %f, %f, %f, %f)\n", stream, x, y, z, w );
17320   ENTER_GL();
17321   func_glVertexStream4fATI( stream, x, y, z, w );
17322   LEAVE_GL();
17323 }
17324
17325 static void WINAPI wine_glVertexStream4fvATI( GLenum stream, GLfloat* coords ) {
17326   void (*func_glVertexStream4fvATI)( GLenum, GLfloat* ) = extension_funcs[EXT_glVertexStream4fvATI];
17327   TRACE("(%d, %p)\n", stream, coords );
17328   ENTER_GL();
17329   func_glVertexStream4fvATI( stream, coords );
17330   LEAVE_GL();
17331 }
17332
17333 static void WINAPI wine_glVertexStream4iATI( GLenum stream, GLint x, GLint y, GLint z, GLint w ) {
17334   void (*func_glVertexStream4iATI)( GLenum, GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glVertexStream4iATI];
17335   TRACE("(%d, %d, %d, %d, %d)\n", stream, x, y, z, w );
17336   ENTER_GL();
17337   func_glVertexStream4iATI( stream, x, y, z, w );
17338   LEAVE_GL();
17339 }
17340
17341 static void WINAPI wine_glVertexStream4ivATI( GLenum stream, GLint* coords ) {
17342   void (*func_glVertexStream4ivATI)( GLenum, GLint* ) = extension_funcs[EXT_glVertexStream4ivATI];
17343   TRACE("(%d, %p)\n", stream, coords );
17344   ENTER_GL();
17345   func_glVertexStream4ivATI( stream, coords );
17346   LEAVE_GL();
17347 }
17348
17349 static void WINAPI wine_glVertexStream4sATI( GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w ) {
17350   void (*func_glVertexStream4sATI)( GLenum, GLshort, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glVertexStream4sATI];
17351   TRACE("(%d, %d, %d, %d, %d)\n", stream, x, y, z, w );
17352   ENTER_GL();
17353   func_glVertexStream4sATI( stream, x, y, z, w );
17354   LEAVE_GL();
17355 }
17356
17357 static void WINAPI wine_glVertexStream4svATI( GLenum stream, GLshort* coords ) {
17358   void (*func_glVertexStream4svATI)( GLenum, GLshort* ) = extension_funcs[EXT_glVertexStream4svATI];
17359   TRACE("(%d, %p)\n", stream, coords );
17360   ENTER_GL();
17361   func_glVertexStream4svATI( stream, coords );
17362   LEAVE_GL();
17363 }
17364
17365 static void WINAPI wine_glVertexWeightPointerEXT( GLsizei size, GLenum type, GLsizei stride, GLvoid* pointer ) {
17366   void (*func_glVertexWeightPointerEXT)( GLsizei, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glVertexWeightPointerEXT];
17367   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
17368   ENTER_GL();
17369   func_glVertexWeightPointerEXT( size, type, stride, pointer );
17370   LEAVE_GL();
17371 }
17372
17373 static void WINAPI wine_glVertexWeightfEXT( GLfloat weight ) {
17374   void (*func_glVertexWeightfEXT)( GLfloat ) = extension_funcs[EXT_glVertexWeightfEXT];
17375   TRACE("(%f)\n", weight );
17376   ENTER_GL();
17377   func_glVertexWeightfEXT( weight );
17378   LEAVE_GL();
17379 }
17380
17381 static void WINAPI wine_glVertexWeightfvEXT( GLfloat* weight ) {
17382   void (*func_glVertexWeightfvEXT)( GLfloat* ) = extension_funcs[EXT_glVertexWeightfvEXT];
17383   TRACE("(%p)\n", weight );
17384   ENTER_GL();
17385   func_glVertexWeightfvEXT( weight );
17386   LEAVE_GL();
17387 }
17388
17389 static void WINAPI wine_glVertexWeighthNV( unsigned short weight ) {
17390   void (*func_glVertexWeighthNV)( unsigned short ) = extension_funcs[EXT_glVertexWeighthNV];
17391   TRACE("(%d)\n", weight );
17392   ENTER_GL();
17393   func_glVertexWeighthNV( weight );
17394   LEAVE_GL();
17395 }
17396
17397 static void WINAPI wine_glVertexWeighthvNV( unsigned short* weight ) {
17398   void (*func_glVertexWeighthvNV)( unsigned short* ) = extension_funcs[EXT_glVertexWeighthvNV];
17399   TRACE("(%p)\n", weight );
17400   ENTER_GL();
17401   func_glVertexWeighthvNV( weight );
17402   LEAVE_GL();
17403 }
17404
17405 static GLenum WINAPI wine_glVideoCaptureNV( GLuint video_capture_slot, GLuint* sequence_num, UINT64* capture_time ) {
17406   GLenum ret_value;
17407   GLenum (*func_glVideoCaptureNV)( GLuint, GLuint*, UINT64* ) = extension_funcs[EXT_glVideoCaptureNV];
17408   TRACE("(%d, %p, %p)\n", video_capture_slot, sequence_num, capture_time );
17409   ENTER_GL();
17410   ret_value = func_glVideoCaptureNV( video_capture_slot, sequence_num, capture_time );
17411   LEAVE_GL();
17412   return ret_value;
17413 }
17414
17415 static void WINAPI wine_glVideoCaptureStreamParameterdvNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble* params ) {
17416   void (*func_glVideoCaptureStreamParameterdvNV)( GLuint, GLuint, GLenum, GLdouble* ) = extension_funcs[EXT_glVideoCaptureStreamParameterdvNV];
17417   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
17418   ENTER_GL();
17419   func_glVideoCaptureStreamParameterdvNV( video_capture_slot, stream, pname, params );
17420   LEAVE_GL();
17421 }
17422
17423 static void WINAPI wine_glVideoCaptureStreamParameterfvNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat* params ) {
17424   void (*func_glVideoCaptureStreamParameterfvNV)( GLuint, GLuint, GLenum, GLfloat* ) = extension_funcs[EXT_glVideoCaptureStreamParameterfvNV];
17425   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
17426   ENTER_GL();
17427   func_glVideoCaptureStreamParameterfvNV( video_capture_slot, stream, pname, params );
17428   LEAVE_GL();
17429 }
17430
17431 static void WINAPI wine_glVideoCaptureStreamParameterivNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLint* params ) {
17432   void (*func_glVideoCaptureStreamParameterivNV)( GLuint, GLuint, GLenum, GLint* ) = extension_funcs[EXT_glVideoCaptureStreamParameterivNV];
17433   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
17434   ENTER_GL();
17435   func_glVideoCaptureStreamParameterivNV( video_capture_slot, stream, pname, params );
17436   LEAVE_GL();
17437 }
17438
17439 static void WINAPI wine_glViewportArrayv( GLuint first, GLsizei count, GLfloat* v ) {
17440   void (*func_glViewportArrayv)( GLuint, GLsizei, GLfloat* ) = extension_funcs[EXT_glViewportArrayv];
17441   TRACE("(%d, %d, %p)\n", first, count, v );
17442   ENTER_GL();
17443   func_glViewportArrayv( first, count, v );
17444   LEAVE_GL();
17445 }
17446
17447 static void WINAPI wine_glViewportIndexedf( GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h ) {
17448   void (*func_glViewportIndexedf)( GLuint, GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glViewportIndexedf];
17449   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, w, h );
17450   ENTER_GL();
17451   func_glViewportIndexedf( index, x, y, w, h );
17452   LEAVE_GL();
17453 }
17454
17455 static void WINAPI wine_glViewportIndexedfv( GLuint index, GLfloat* v ) {
17456   void (*func_glViewportIndexedfv)( GLuint, GLfloat* ) = extension_funcs[EXT_glViewportIndexedfv];
17457   TRACE("(%d, %p)\n", index, v );
17458   ENTER_GL();
17459   func_glViewportIndexedfv( index, v );
17460   LEAVE_GL();
17461 }
17462
17463 static void WINAPI wine_glWaitSync( GLvoid* sync, GLbitfield flags, UINT64 timeout ) {
17464   void (*func_glWaitSync)( GLvoid*, GLbitfield, UINT64 ) = extension_funcs[EXT_glWaitSync];
17465   TRACE("(%p, %d, %s)\n", sync, flags, wine_dbgstr_longlong(timeout) );
17466   ENTER_GL();
17467   func_glWaitSync( sync, flags, timeout );
17468   LEAVE_GL();
17469 }
17470
17471 static void WINAPI wine_glWeightPointerARB( GLint size, GLenum type, GLsizei stride, GLvoid* pointer ) {
17472   void (*func_glWeightPointerARB)( GLint, GLenum, GLsizei, GLvoid* ) = extension_funcs[EXT_glWeightPointerARB];
17473   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
17474   ENTER_GL();
17475   func_glWeightPointerARB( size, type, stride, pointer );
17476   LEAVE_GL();
17477 }
17478
17479 static void WINAPI wine_glWeightbvARB( GLint size, GLbyte* weights ) {
17480   void (*func_glWeightbvARB)( GLint, GLbyte* ) = extension_funcs[EXT_glWeightbvARB];
17481   TRACE("(%d, %p)\n", size, weights );
17482   ENTER_GL();
17483   func_glWeightbvARB( size, weights );
17484   LEAVE_GL();
17485 }
17486
17487 static void WINAPI wine_glWeightdvARB( GLint size, GLdouble* weights ) {
17488   void (*func_glWeightdvARB)( GLint, GLdouble* ) = extension_funcs[EXT_glWeightdvARB];
17489   TRACE("(%d, %p)\n", size, weights );
17490   ENTER_GL();
17491   func_glWeightdvARB( size, weights );
17492   LEAVE_GL();
17493 }
17494
17495 static void WINAPI wine_glWeightfvARB( GLint size, GLfloat* weights ) {
17496   void (*func_glWeightfvARB)( GLint, GLfloat* ) = extension_funcs[EXT_glWeightfvARB];
17497   TRACE("(%d, %p)\n", size, weights );
17498   ENTER_GL();
17499   func_glWeightfvARB( size, weights );
17500   LEAVE_GL();
17501 }
17502
17503 static void WINAPI wine_glWeightivARB( GLint size, GLint* weights ) {
17504   void (*func_glWeightivARB)( GLint, GLint* ) = extension_funcs[EXT_glWeightivARB];
17505   TRACE("(%d, %p)\n", size, weights );
17506   ENTER_GL();
17507   func_glWeightivARB( size, weights );
17508   LEAVE_GL();
17509 }
17510
17511 static void WINAPI wine_glWeightsvARB( GLint size, GLshort* weights ) {
17512   void (*func_glWeightsvARB)( GLint, GLshort* ) = extension_funcs[EXT_glWeightsvARB];
17513   TRACE("(%d, %p)\n", size, weights );
17514   ENTER_GL();
17515   func_glWeightsvARB( size, weights );
17516   LEAVE_GL();
17517 }
17518
17519 static void WINAPI wine_glWeightubvARB( GLint size, GLubyte* weights ) {
17520   void (*func_glWeightubvARB)( GLint, GLubyte* ) = extension_funcs[EXT_glWeightubvARB];
17521   TRACE("(%d, %p)\n", size, weights );
17522   ENTER_GL();
17523   func_glWeightubvARB( size, weights );
17524   LEAVE_GL();
17525 }
17526
17527 static void WINAPI wine_glWeightuivARB( GLint size, GLuint* weights ) {
17528   void (*func_glWeightuivARB)( GLint, GLuint* ) = extension_funcs[EXT_glWeightuivARB];
17529   TRACE("(%d, %p)\n", size, weights );
17530   ENTER_GL();
17531   func_glWeightuivARB( size, weights );
17532   LEAVE_GL();
17533 }
17534
17535 static void WINAPI wine_glWeightusvARB( GLint size, GLushort* weights ) {
17536   void (*func_glWeightusvARB)( GLint, GLushort* ) = extension_funcs[EXT_glWeightusvARB];
17537   TRACE("(%d, %p)\n", size, weights );
17538   ENTER_GL();
17539   func_glWeightusvARB( size, weights );
17540   LEAVE_GL();
17541 }
17542
17543 static void WINAPI wine_glWindowPos2d( GLdouble x, GLdouble y ) {
17544   void (*func_glWindowPos2d)( GLdouble, GLdouble ) = extension_funcs[EXT_glWindowPos2d];
17545   TRACE("(%f, %f)\n", x, y );
17546   ENTER_GL();
17547   func_glWindowPos2d( x, y );
17548   LEAVE_GL();
17549 }
17550
17551 static void WINAPI wine_glWindowPos2dARB( GLdouble x, GLdouble y ) {
17552   void (*func_glWindowPos2dARB)( GLdouble, GLdouble ) = extension_funcs[EXT_glWindowPos2dARB];
17553   TRACE("(%f, %f)\n", x, y );
17554   ENTER_GL();
17555   func_glWindowPos2dARB( x, y );
17556   LEAVE_GL();
17557 }
17558
17559 static void WINAPI wine_glWindowPos2dMESA( GLdouble x, GLdouble y ) {
17560   void (*func_glWindowPos2dMESA)( GLdouble, GLdouble ) = extension_funcs[EXT_glWindowPos2dMESA];
17561   TRACE("(%f, %f)\n", x, y );
17562   ENTER_GL();
17563   func_glWindowPos2dMESA( x, y );
17564   LEAVE_GL();
17565 }
17566
17567 static void WINAPI wine_glWindowPos2dv( GLdouble* v ) {
17568   void (*func_glWindowPos2dv)( GLdouble* ) = extension_funcs[EXT_glWindowPos2dv];
17569   TRACE("(%p)\n", v );
17570   ENTER_GL();
17571   func_glWindowPos2dv( v );
17572   LEAVE_GL();
17573 }
17574
17575 static void WINAPI wine_glWindowPos2dvARB( GLdouble* v ) {
17576   void (*func_glWindowPos2dvARB)( GLdouble* ) = extension_funcs[EXT_glWindowPos2dvARB];
17577   TRACE("(%p)\n", v );
17578   ENTER_GL();
17579   func_glWindowPos2dvARB( v );
17580   LEAVE_GL();
17581 }
17582
17583 static void WINAPI wine_glWindowPos2dvMESA( GLdouble* v ) {
17584   void (*func_glWindowPos2dvMESA)( GLdouble* ) = extension_funcs[EXT_glWindowPos2dvMESA];
17585   TRACE("(%p)\n", v );
17586   ENTER_GL();
17587   func_glWindowPos2dvMESA( v );
17588   LEAVE_GL();
17589 }
17590
17591 static void WINAPI wine_glWindowPos2f( GLfloat x, GLfloat y ) {
17592   void (*func_glWindowPos2f)( GLfloat, GLfloat ) = extension_funcs[EXT_glWindowPos2f];
17593   TRACE("(%f, %f)\n", x, y );
17594   ENTER_GL();
17595   func_glWindowPos2f( x, y );
17596   LEAVE_GL();
17597 }
17598
17599 static void WINAPI wine_glWindowPos2fARB( GLfloat x, GLfloat y ) {
17600   void (*func_glWindowPos2fARB)( GLfloat, GLfloat ) = extension_funcs[EXT_glWindowPos2fARB];
17601   TRACE("(%f, %f)\n", x, y );
17602   ENTER_GL();
17603   func_glWindowPos2fARB( x, y );
17604   LEAVE_GL();
17605 }
17606
17607 static void WINAPI wine_glWindowPos2fMESA( GLfloat x, GLfloat y ) {
17608   void (*func_glWindowPos2fMESA)( GLfloat, GLfloat ) = extension_funcs[EXT_glWindowPos2fMESA];
17609   TRACE("(%f, %f)\n", x, y );
17610   ENTER_GL();
17611   func_glWindowPos2fMESA( x, y );
17612   LEAVE_GL();
17613 }
17614
17615 static void WINAPI wine_glWindowPos2fv( GLfloat* v ) {
17616   void (*func_glWindowPos2fv)( GLfloat* ) = extension_funcs[EXT_glWindowPos2fv];
17617   TRACE("(%p)\n", v );
17618   ENTER_GL();
17619   func_glWindowPos2fv( v );
17620   LEAVE_GL();
17621 }
17622
17623 static void WINAPI wine_glWindowPos2fvARB( GLfloat* v ) {
17624   void (*func_glWindowPos2fvARB)( GLfloat* ) = extension_funcs[EXT_glWindowPos2fvARB];
17625   TRACE("(%p)\n", v );
17626   ENTER_GL();
17627   func_glWindowPos2fvARB( v );
17628   LEAVE_GL();
17629 }
17630
17631 static void WINAPI wine_glWindowPos2fvMESA( GLfloat* v ) {
17632   void (*func_glWindowPos2fvMESA)( GLfloat* ) = extension_funcs[EXT_glWindowPos2fvMESA];
17633   TRACE("(%p)\n", v );
17634   ENTER_GL();
17635   func_glWindowPos2fvMESA( v );
17636   LEAVE_GL();
17637 }
17638
17639 static void WINAPI wine_glWindowPos2i( GLint x, GLint y ) {
17640   void (*func_glWindowPos2i)( GLint, GLint ) = extension_funcs[EXT_glWindowPos2i];
17641   TRACE("(%d, %d)\n", x, y );
17642   ENTER_GL();
17643   func_glWindowPos2i( x, y );
17644   LEAVE_GL();
17645 }
17646
17647 static void WINAPI wine_glWindowPos2iARB( GLint x, GLint y ) {
17648   void (*func_glWindowPos2iARB)( GLint, GLint ) = extension_funcs[EXT_glWindowPos2iARB];
17649   TRACE("(%d, %d)\n", x, y );
17650   ENTER_GL();
17651   func_glWindowPos2iARB( x, y );
17652   LEAVE_GL();
17653 }
17654
17655 static void WINAPI wine_glWindowPos2iMESA( GLint x, GLint y ) {
17656   void (*func_glWindowPos2iMESA)( GLint, GLint ) = extension_funcs[EXT_glWindowPos2iMESA];
17657   TRACE("(%d, %d)\n", x, y );
17658   ENTER_GL();
17659   func_glWindowPos2iMESA( x, y );
17660   LEAVE_GL();
17661 }
17662
17663 static void WINAPI wine_glWindowPos2iv( GLint* v ) {
17664   void (*func_glWindowPos2iv)( GLint* ) = extension_funcs[EXT_glWindowPos2iv];
17665   TRACE("(%p)\n", v );
17666   ENTER_GL();
17667   func_glWindowPos2iv( v );
17668   LEAVE_GL();
17669 }
17670
17671 static void WINAPI wine_glWindowPos2ivARB( GLint* v ) {
17672   void (*func_glWindowPos2ivARB)( GLint* ) = extension_funcs[EXT_glWindowPos2ivARB];
17673   TRACE("(%p)\n", v );
17674   ENTER_GL();
17675   func_glWindowPos2ivARB( v );
17676   LEAVE_GL();
17677 }
17678
17679 static void WINAPI wine_glWindowPos2ivMESA( GLint* v ) {
17680   void (*func_glWindowPos2ivMESA)( GLint* ) = extension_funcs[EXT_glWindowPos2ivMESA];
17681   TRACE("(%p)\n", v );
17682   ENTER_GL();
17683   func_glWindowPos2ivMESA( v );
17684   LEAVE_GL();
17685 }
17686
17687 static void WINAPI wine_glWindowPos2s( GLshort x, GLshort y ) {
17688   void (*func_glWindowPos2s)( GLshort, GLshort ) = extension_funcs[EXT_glWindowPos2s];
17689   TRACE("(%d, %d)\n", x, y );
17690   ENTER_GL();
17691   func_glWindowPos2s( x, y );
17692   LEAVE_GL();
17693 }
17694
17695 static void WINAPI wine_glWindowPos2sARB( GLshort x, GLshort y ) {
17696   void (*func_glWindowPos2sARB)( GLshort, GLshort ) = extension_funcs[EXT_glWindowPos2sARB];
17697   TRACE("(%d, %d)\n", x, y );
17698   ENTER_GL();
17699   func_glWindowPos2sARB( x, y );
17700   LEAVE_GL();
17701 }
17702
17703 static void WINAPI wine_glWindowPos2sMESA( GLshort x, GLshort y ) {
17704   void (*func_glWindowPos2sMESA)( GLshort, GLshort ) = extension_funcs[EXT_glWindowPos2sMESA];
17705   TRACE("(%d, %d)\n", x, y );
17706   ENTER_GL();
17707   func_glWindowPos2sMESA( x, y );
17708   LEAVE_GL();
17709 }
17710
17711 static void WINAPI wine_glWindowPos2sv( GLshort* v ) {
17712   void (*func_glWindowPos2sv)( GLshort* ) = extension_funcs[EXT_glWindowPos2sv];
17713   TRACE("(%p)\n", v );
17714   ENTER_GL();
17715   func_glWindowPos2sv( v );
17716   LEAVE_GL();
17717 }
17718
17719 static void WINAPI wine_glWindowPos2svARB( GLshort* v ) {
17720   void (*func_glWindowPos2svARB)( GLshort* ) = extension_funcs[EXT_glWindowPos2svARB];
17721   TRACE("(%p)\n", v );
17722   ENTER_GL();
17723   func_glWindowPos2svARB( v );
17724   LEAVE_GL();
17725 }
17726
17727 static void WINAPI wine_glWindowPos2svMESA( GLshort* v ) {
17728   void (*func_glWindowPos2svMESA)( GLshort* ) = extension_funcs[EXT_glWindowPos2svMESA];
17729   TRACE("(%p)\n", v );
17730   ENTER_GL();
17731   func_glWindowPos2svMESA( v );
17732   LEAVE_GL();
17733 }
17734
17735 static void WINAPI wine_glWindowPos3d( GLdouble x, GLdouble y, GLdouble z ) {
17736   void (*func_glWindowPos3d)( GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glWindowPos3d];
17737   TRACE("(%f, %f, %f)\n", x, y, z );
17738   ENTER_GL();
17739   func_glWindowPos3d( x, y, z );
17740   LEAVE_GL();
17741 }
17742
17743 static void WINAPI wine_glWindowPos3dARB( GLdouble x, GLdouble y, GLdouble z ) {
17744   void (*func_glWindowPos3dARB)( GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glWindowPos3dARB];
17745   TRACE("(%f, %f, %f)\n", x, y, z );
17746   ENTER_GL();
17747   func_glWindowPos3dARB( x, y, z );
17748   LEAVE_GL();
17749 }
17750
17751 static void WINAPI wine_glWindowPos3dMESA( GLdouble x, GLdouble y, GLdouble z ) {
17752   void (*func_glWindowPos3dMESA)( GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glWindowPos3dMESA];
17753   TRACE("(%f, %f, %f)\n", x, y, z );
17754   ENTER_GL();
17755   func_glWindowPos3dMESA( x, y, z );
17756   LEAVE_GL();
17757 }
17758
17759 static void WINAPI wine_glWindowPos3dv( GLdouble* v ) {
17760   void (*func_glWindowPos3dv)( GLdouble* ) = extension_funcs[EXT_glWindowPos3dv];
17761   TRACE("(%p)\n", v );
17762   ENTER_GL();
17763   func_glWindowPos3dv( v );
17764   LEAVE_GL();
17765 }
17766
17767 static void WINAPI wine_glWindowPos3dvARB( GLdouble* v ) {
17768   void (*func_glWindowPos3dvARB)( GLdouble* ) = extension_funcs[EXT_glWindowPos3dvARB];
17769   TRACE("(%p)\n", v );
17770   ENTER_GL();
17771   func_glWindowPos3dvARB( v );
17772   LEAVE_GL();
17773 }
17774
17775 static void WINAPI wine_glWindowPos3dvMESA( GLdouble* v ) {
17776   void (*func_glWindowPos3dvMESA)( GLdouble* ) = extension_funcs[EXT_glWindowPos3dvMESA];
17777   TRACE("(%p)\n", v );
17778   ENTER_GL();
17779   func_glWindowPos3dvMESA( v );
17780   LEAVE_GL();
17781 }
17782
17783 static void WINAPI wine_glWindowPos3f( GLfloat x, GLfloat y, GLfloat z ) {
17784   void (*func_glWindowPos3f)( GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glWindowPos3f];
17785   TRACE("(%f, %f, %f)\n", x, y, z );
17786   ENTER_GL();
17787   func_glWindowPos3f( x, y, z );
17788   LEAVE_GL();
17789 }
17790
17791 static void WINAPI wine_glWindowPos3fARB( GLfloat x, GLfloat y, GLfloat z ) {
17792   void (*func_glWindowPos3fARB)( GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glWindowPos3fARB];
17793   TRACE("(%f, %f, %f)\n", x, y, z );
17794   ENTER_GL();
17795   func_glWindowPos3fARB( x, y, z );
17796   LEAVE_GL();
17797 }
17798
17799 static void WINAPI wine_glWindowPos3fMESA( GLfloat x, GLfloat y, GLfloat z ) {
17800   void (*func_glWindowPos3fMESA)( GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glWindowPos3fMESA];
17801   TRACE("(%f, %f, %f)\n", x, y, z );
17802   ENTER_GL();
17803   func_glWindowPos3fMESA( x, y, z );
17804   LEAVE_GL();
17805 }
17806
17807 static void WINAPI wine_glWindowPos3fv( GLfloat* v ) {
17808   void (*func_glWindowPos3fv)( GLfloat* ) = extension_funcs[EXT_glWindowPos3fv];
17809   TRACE("(%p)\n", v );
17810   ENTER_GL();
17811   func_glWindowPos3fv( v );
17812   LEAVE_GL();
17813 }
17814
17815 static void WINAPI wine_glWindowPos3fvARB( GLfloat* v ) {
17816   void (*func_glWindowPos3fvARB)( GLfloat* ) = extension_funcs[EXT_glWindowPos3fvARB];
17817   TRACE("(%p)\n", v );
17818   ENTER_GL();
17819   func_glWindowPos3fvARB( v );
17820   LEAVE_GL();
17821 }
17822
17823 static void WINAPI wine_glWindowPos3fvMESA( GLfloat* v ) {
17824   void (*func_glWindowPos3fvMESA)( GLfloat* ) = extension_funcs[EXT_glWindowPos3fvMESA];
17825   TRACE("(%p)\n", v );
17826   ENTER_GL();
17827   func_glWindowPos3fvMESA( v );
17828   LEAVE_GL();
17829 }
17830
17831 static void WINAPI wine_glWindowPos3i( GLint x, GLint y, GLint z ) {
17832   void (*func_glWindowPos3i)( GLint, GLint, GLint ) = extension_funcs[EXT_glWindowPos3i];
17833   TRACE("(%d, %d, %d)\n", x, y, z );
17834   ENTER_GL();
17835   func_glWindowPos3i( x, y, z );
17836   LEAVE_GL();
17837 }
17838
17839 static void WINAPI wine_glWindowPos3iARB( GLint x, GLint y, GLint z ) {
17840   void (*func_glWindowPos3iARB)( GLint, GLint, GLint ) = extension_funcs[EXT_glWindowPos3iARB];
17841   TRACE("(%d, %d, %d)\n", x, y, z );
17842   ENTER_GL();
17843   func_glWindowPos3iARB( x, y, z );
17844   LEAVE_GL();
17845 }
17846
17847 static void WINAPI wine_glWindowPos3iMESA( GLint x, GLint y, GLint z ) {
17848   void (*func_glWindowPos3iMESA)( GLint, GLint, GLint ) = extension_funcs[EXT_glWindowPos3iMESA];
17849   TRACE("(%d, %d, %d)\n", x, y, z );
17850   ENTER_GL();
17851   func_glWindowPos3iMESA( x, y, z );
17852   LEAVE_GL();
17853 }
17854
17855 static void WINAPI wine_glWindowPos3iv( GLint* v ) {
17856   void (*func_glWindowPos3iv)( GLint* ) = extension_funcs[EXT_glWindowPos3iv];
17857   TRACE("(%p)\n", v );
17858   ENTER_GL();
17859   func_glWindowPos3iv( v );
17860   LEAVE_GL();
17861 }
17862
17863 static void WINAPI wine_glWindowPos3ivARB( GLint* v ) {
17864   void (*func_glWindowPos3ivARB)( GLint* ) = extension_funcs[EXT_glWindowPos3ivARB];
17865   TRACE("(%p)\n", v );
17866   ENTER_GL();
17867   func_glWindowPos3ivARB( v );
17868   LEAVE_GL();
17869 }
17870
17871 static void WINAPI wine_glWindowPos3ivMESA( GLint* v ) {
17872   void (*func_glWindowPos3ivMESA)( GLint* ) = extension_funcs[EXT_glWindowPos3ivMESA];
17873   TRACE("(%p)\n", v );
17874   ENTER_GL();
17875   func_glWindowPos3ivMESA( v );
17876   LEAVE_GL();
17877 }
17878
17879 static void WINAPI wine_glWindowPos3s( GLshort x, GLshort y, GLshort z ) {
17880   void (*func_glWindowPos3s)( GLshort, GLshort, GLshort ) = extension_funcs[EXT_glWindowPos3s];
17881   TRACE("(%d, %d, %d)\n", x, y, z );
17882   ENTER_GL();
17883   func_glWindowPos3s( x, y, z );
17884   LEAVE_GL();
17885 }
17886
17887 static void WINAPI wine_glWindowPos3sARB( GLshort x, GLshort y, GLshort z ) {
17888   void (*func_glWindowPos3sARB)( GLshort, GLshort, GLshort ) = extension_funcs[EXT_glWindowPos3sARB];
17889   TRACE("(%d, %d, %d)\n", x, y, z );
17890   ENTER_GL();
17891   func_glWindowPos3sARB( x, y, z );
17892   LEAVE_GL();
17893 }
17894
17895 static void WINAPI wine_glWindowPos3sMESA( GLshort x, GLshort y, GLshort z ) {
17896   void (*func_glWindowPos3sMESA)( GLshort, GLshort, GLshort ) = extension_funcs[EXT_glWindowPos3sMESA];
17897   TRACE("(%d, %d, %d)\n", x, y, z );
17898   ENTER_GL();
17899   func_glWindowPos3sMESA( x, y, z );
17900   LEAVE_GL();
17901 }
17902
17903 static void WINAPI wine_glWindowPos3sv( GLshort* v ) {
17904   void (*func_glWindowPos3sv)( GLshort* ) = extension_funcs[EXT_glWindowPos3sv];
17905   TRACE("(%p)\n", v );
17906   ENTER_GL();
17907   func_glWindowPos3sv( v );
17908   LEAVE_GL();
17909 }
17910
17911 static void WINAPI wine_glWindowPos3svARB( GLshort* v ) {
17912   void (*func_glWindowPos3svARB)( GLshort* ) = extension_funcs[EXT_glWindowPos3svARB];
17913   TRACE("(%p)\n", v );
17914   ENTER_GL();
17915   func_glWindowPos3svARB( v );
17916   LEAVE_GL();
17917 }
17918
17919 static void WINAPI wine_glWindowPos3svMESA( GLshort* v ) {
17920   void (*func_glWindowPos3svMESA)( GLshort* ) = extension_funcs[EXT_glWindowPos3svMESA];
17921   TRACE("(%p)\n", v );
17922   ENTER_GL();
17923   func_glWindowPos3svMESA( v );
17924   LEAVE_GL();
17925 }
17926
17927 static void WINAPI wine_glWindowPos4dMESA( GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
17928   void (*func_glWindowPos4dMESA)( GLdouble, GLdouble, GLdouble, GLdouble ) = extension_funcs[EXT_glWindowPos4dMESA];
17929   TRACE("(%f, %f, %f, %f)\n", x, y, z, w );
17930   ENTER_GL();
17931   func_glWindowPos4dMESA( x, y, z, w );
17932   LEAVE_GL();
17933 }
17934
17935 static void WINAPI wine_glWindowPos4dvMESA( GLdouble* v ) {
17936   void (*func_glWindowPos4dvMESA)( GLdouble* ) = extension_funcs[EXT_glWindowPos4dvMESA];
17937   TRACE("(%p)\n", v );
17938   ENTER_GL();
17939   func_glWindowPos4dvMESA( v );
17940   LEAVE_GL();
17941 }
17942
17943 static void WINAPI wine_glWindowPos4fMESA( GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
17944   void (*func_glWindowPos4fMESA)( GLfloat, GLfloat, GLfloat, GLfloat ) = extension_funcs[EXT_glWindowPos4fMESA];
17945   TRACE("(%f, %f, %f, %f)\n", x, y, z, w );
17946   ENTER_GL();
17947   func_glWindowPos4fMESA( x, y, z, w );
17948   LEAVE_GL();
17949 }
17950
17951 static void WINAPI wine_glWindowPos4fvMESA( GLfloat* v ) {
17952   void (*func_glWindowPos4fvMESA)( GLfloat* ) = extension_funcs[EXT_glWindowPos4fvMESA];
17953   TRACE("(%p)\n", v );
17954   ENTER_GL();
17955   func_glWindowPos4fvMESA( v );
17956   LEAVE_GL();
17957 }
17958
17959 static void WINAPI wine_glWindowPos4iMESA( GLint x, GLint y, GLint z, GLint w ) {
17960   void (*func_glWindowPos4iMESA)( GLint, GLint, GLint, GLint ) = extension_funcs[EXT_glWindowPos4iMESA];
17961   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
17962   ENTER_GL();
17963   func_glWindowPos4iMESA( x, y, z, w );
17964   LEAVE_GL();
17965 }
17966
17967 static void WINAPI wine_glWindowPos4ivMESA( GLint* v ) {
17968   void (*func_glWindowPos4ivMESA)( GLint* ) = extension_funcs[EXT_glWindowPos4ivMESA];
17969   TRACE("(%p)\n", v );
17970   ENTER_GL();
17971   func_glWindowPos4ivMESA( v );
17972   LEAVE_GL();
17973 }
17974
17975 static void WINAPI wine_glWindowPos4sMESA( GLshort x, GLshort y, GLshort z, GLshort w ) {
17976   void (*func_glWindowPos4sMESA)( GLshort, GLshort, GLshort, GLshort ) = extension_funcs[EXT_glWindowPos4sMESA];
17977   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
17978   ENTER_GL();
17979   func_glWindowPos4sMESA( x, y, z, w );
17980   LEAVE_GL();
17981 }
17982
17983 static void WINAPI wine_glWindowPos4svMESA( GLshort* v ) {
17984   void (*func_glWindowPos4svMESA)( GLshort* ) = extension_funcs[EXT_glWindowPos4svMESA];
17985   TRACE("(%p)\n", v );
17986   ENTER_GL();
17987   func_glWindowPos4svMESA( v );
17988   LEAVE_GL();
17989 }
17990
17991 static void WINAPI wine_glWriteMaskEXT( GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW ) {
17992   void (*func_glWriteMaskEXT)( GLuint, GLuint, GLenum, GLenum, GLenum, GLenum ) = extension_funcs[EXT_glWriteMaskEXT];
17993   TRACE("(%d, %d, %d, %d, %d, %d)\n", res, in, outX, outY, outZ, outW );
17994   ENTER_GL();
17995   func_glWriteMaskEXT( res, in, outX, outY, outZ, outW );
17996   LEAVE_GL();
17997 }
17998
17999
18000 /* The table giving the correspondence between names and functions */
18001 const OpenGL_extension extension_registry[NB_EXTENSIONS] = {
18002   { "glActiveProgramEXT", "GL_EXT_separate_shader_objects", wine_glActiveProgramEXT },
18003   { "glActiveShaderProgram", "GL_ARB_separate_shader_objects", wine_glActiveShaderProgram },
18004   { "glActiveStencilFaceEXT", "GL_EXT_stencil_two_side", wine_glActiveStencilFaceEXT },
18005   { "glActiveTexture", "GL_VERSION_1_3", wine_glActiveTexture },
18006   { "glActiveTextureARB", "GL_ARB_multitexture", wine_glActiveTextureARB },
18007   { "glActiveVaryingNV", "GL_NV_transform_feedback", wine_glActiveVaryingNV },
18008   { "glAlphaFragmentOp1ATI", "GL_ATI_fragment_shader", wine_glAlphaFragmentOp1ATI },
18009   { "glAlphaFragmentOp2ATI", "GL_ATI_fragment_shader", wine_glAlphaFragmentOp2ATI },
18010   { "glAlphaFragmentOp3ATI", "GL_ATI_fragment_shader", wine_glAlphaFragmentOp3ATI },
18011   { "glApplyTextureEXT", "GL_EXT_light_texture", wine_glApplyTextureEXT },
18012   { "glAreProgramsResidentNV", "GL_NV_vertex_program", wine_glAreProgramsResidentNV },
18013   { "glAreTexturesResidentEXT", "GL_EXT_texture_object", wine_glAreTexturesResidentEXT },
18014   { "glArrayElementEXT", "GL_EXT_vertex_array", wine_glArrayElementEXT },
18015   { "glArrayObjectATI", "GL_ATI_vertex_array_object", wine_glArrayObjectATI },
18016   { "glAsyncMarkerSGIX", "GL_SGIX_async", wine_glAsyncMarkerSGIX },
18017   { "glAttachObjectARB", "GL_ARB_shader_objects", wine_glAttachObjectARB },
18018   { "glAttachShader", "GL_VERSION_2_0", wine_glAttachShader },
18019   { "glBeginConditionalRender", "GL_VERSION_3_0", wine_glBeginConditionalRender },
18020   { "glBeginConditionalRenderNV", "GL_NV_conditional_render", wine_glBeginConditionalRenderNV },
18021   { "glBeginFragmentShaderATI", "GL_ATI_fragment_shader", wine_glBeginFragmentShaderATI },
18022   { "glBeginOcclusionQueryNV", "GL_NV_occlusion_query", wine_glBeginOcclusionQueryNV },
18023   { "glBeginPerfMonitorAMD", "GL_AMD_performance_monitor", wine_glBeginPerfMonitorAMD },
18024   { "glBeginQuery", "GL_VERSION_1_5", wine_glBeginQuery },
18025   { "glBeginQueryARB", "GL_ARB_occlusion_query", wine_glBeginQueryARB },
18026   { "glBeginQueryIndexed", "GL_ARB_transform_feedback3", wine_glBeginQueryIndexed },
18027   { "glBeginTransformFeedback", "GL_VERSION_3_0", wine_glBeginTransformFeedback },
18028   { "glBeginTransformFeedbackEXT", "GL_EXT_transform_feedback", wine_glBeginTransformFeedbackEXT },
18029   { "glBeginTransformFeedbackNV", "GL_NV_transform_feedback", wine_glBeginTransformFeedbackNV },
18030   { "glBeginVertexShaderEXT", "GL_EXT_vertex_shader", wine_glBeginVertexShaderEXT },
18031   { "glBeginVideoCaptureNV", "GL_NV_video_capture", wine_glBeginVideoCaptureNV },
18032   { "glBindAttribLocation", "GL_VERSION_2_0", wine_glBindAttribLocation },
18033   { "glBindAttribLocationARB", "GL_ARB_vertex_shader", wine_glBindAttribLocationARB },
18034   { "glBindBuffer", "GL_VERSION_1_5", wine_glBindBuffer },
18035   { "glBindBufferARB", "GL_ARB_vertex_buffer_object", wine_glBindBufferARB },
18036   { "glBindBufferBase", "GL_VERSION_3_0", wine_glBindBufferBase },
18037   { "glBindBufferBaseEXT", "GL_EXT_transform_feedback", wine_glBindBufferBaseEXT },
18038   { "glBindBufferBaseNV", "GL_NV_transform_feedback", wine_glBindBufferBaseNV },
18039   { "glBindBufferOffsetEXT", "GL_EXT_transform_feedback", wine_glBindBufferOffsetEXT },
18040   { "glBindBufferOffsetNV", "GL_NV_transform_feedback", wine_glBindBufferOffsetNV },
18041   { "glBindBufferRange", "GL_VERSION_3_0", wine_glBindBufferRange },
18042   { "glBindBufferRangeEXT", "GL_EXT_transform_feedback", wine_glBindBufferRangeEXT },
18043   { "glBindBufferRangeNV", "GL_NV_transform_feedback", wine_glBindBufferRangeNV },
18044   { "glBindFragDataLocation", "GL_VERSION_3_0", wine_glBindFragDataLocation },
18045   { "glBindFragDataLocationEXT", "GL_EXT_gpu_shader4", wine_glBindFragDataLocationEXT },
18046   { "glBindFragDataLocationIndexed", "GL_ARB_blend_func_extended", wine_glBindFragDataLocationIndexed },
18047   { "glBindFragmentShaderATI", "GL_ATI_fragment_shader", wine_glBindFragmentShaderATI },
18048   { "glBindFramebuffer", "GL_ARB_framebuffer_object", wine_glBindFramebuffer },
18049   { "glBindFramebufferEXT", "GL_EXT_framebuffer_object", wine_glBindFramebufferEXT },
18050   { "glBindImageTextureEXT", "GL_EXT_shader_image_load_store", wine_glBindImageTextureEXT },
18051   { "glBindLightParameterEXT", "GL_EXT_vertex_shader", wine_glBindLightParameterEXT },
18052   { "glBindMaterialParameterEXT", "GL_EXT_vertex_shader", wine_glBindMaterialParameterEXT },
18053   { "glBindMultiTextureEXT", "GL_EXT_direct_state_access", wine_glBindMultiTextureEXT },
18054   { "glBindParameterEXT", "GL_EXT_vertex_shader", wine_glBindParameterEXT },
18055   { "glBindProgramARB", "GL_ARB_vertex_program", wine_glBindProgramARB },
18056   { "glBindProgramNV", "GL_NV_vertex_program", wine_glBindProgramNV },
18057   { "glBindProgramPipeline", "GL_ARB_separate_shader_objects", wine_glBindProgramPipeline },
18058   { "glBindRenderbuffer", "GL_ARB_framebuffer_object", wine_glBindRenderbuffer },
18059   { "glBindRenderbufferEXT", "GL_EXT_framebuffer_object", wine_glBindRenderbufferEXT },
18060   { "glBindSampler", "GL_ARB_sampler_objects", wine_glBindSampler },
18061   { "glBindTexGenParameterEXT", "GL_EXT_vertex_shader", wine_glBindTexGenParameterEXT },
18062   { "glBindTextureEXT", "GL_EXT_texture_object", wine_glBindTextureEXT },
18063   { "glBindTextureUnitParameterEXT", "GL_EXT_vertex_shader", wine_glBindTextureUnitParameterEXT },
18064   { "glBindTransformFeedback", "GL_ARB_transform_feedback2", wine_glBindTransformFeedback },
18065   { "glBindTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glBindTransformFeedbackNV },
18066   { "glBindVertexArray", "GL_ARB_vertex_array_object", wine_glBindVertexArray },
18067   { "glBindVertexArrayAPPLE", "GL_APPLE_vertex_array_object", wine_glBindVertexArrayAPPLE },
18068   { "glBindVertexShaderEXT", "GL_EXT_vertex_shader", wine_glBindVertexShaderEXT },
18069   { "glBindVideoCaptureStreamBufferNV", "GL_NV_video_capture", wine_glBindVideoCaptureStreamBufferNV },
18070   { "glBindVideoCaptureStreamTextureNV", "GL_NV_video_capture", wine_glBindVideoCaptureStreamTextureNV },
18071   { "glBinormal3bEXT", "GL_EXT_coordinate_frame", wine_glBinormal3bEXT },
18072   { "glBinormal3bvEXT", "GL_EXT_coordinate_frame", wine_glBinormal3bvEXT },
18073   { "glBinormal3dEXT", "GL_EXT_coordinate_frame", wine_glBinormal3dEXT },
18074   { "glBinormal3dvEXT", "GL_EXT_coordinate_frame", wine_glBinormal3dvEXT },
18075   { "glBinormal3fEXT", "GL_EXT_coordinate_frame", wine_glBinormal3fEXT },
18076   { "glBinormal3fvEXT", "GL_EXT_coordinate_frame", wine_glBinormal3fvEXT },
18077   { "glBinormal3iEXT", "GL_EXT_coordinate_frame", wine_glBinormal3iEXT },
18078   { "glBinormal3ivEXT", "GL_EXT_coordinate_frame", wine_glBinormal3ivEXT },
18079   { "glBinormal3sEXT", "GL_EXT_coordinate_frame", wine_glBinormal3sEXT },
18080   { "glBinormal3svEXT", "GL_EXT_coordinate_frame", wine_glBinormal3svEXT },
18081   { "glBinormalPointerEXT", "GL_EXT_coordinate_frame", wine_glBinormalPointerEXT },
18082   { "glBlendColor", "GL_VERSION_1_2", wine_glBlendColor },
18083   { "glBlendColorEXT", "GL_EXT_blend_color", wine_glBlendColorEXT },
18084   { "glBlendEquation", "GL_VERSION_1_2", wine_glBlendEquation },
18085   { "glBlendEquationEXT", "GL_EXT_blend_minmax", wine_glBlendEquationEXT },
18086   { "glBlendEquationIndexedAMD", "GL_AMD_draw_buffers_blend", wine_glBlendEquationIndexedAMD },
18087   { "glBlendEquationSeparate", "GL_VERSION_2_0", wine_glBlendEquationSeparate },
18088   { "glBlendEquationSeparateEXT", "GL_EXT_blend_equation_separate", wine_glBlendEquationSeparateEXT },
18089   { "glBlendEquationSeparateIndexedAMD", "GL_AMD_draw_buffers_blend", wine_glBlendEquationSeparateIndexedAMD },
18090   { "glBlendEquationSeparatei", "GL_VERSION_4_0", wine_glBlendEquationSeparatei },
18091   { "glBlendEquationSeparateiARB", "GL_ARB_draw_buffers_blend", wine_glBlendEquationSeparateiARB },
18092   { "glBlendEquationi", "GL_VERSION_4_0", wine_glBlendEquationi },
18093   { "glBlendEquationiARB", "GL_ARB_draw_buffers_blend", wine_glBlendEquationiARB },
18094   { "glBlendFuncIndexedAMD", "GL_AMD_draw_buffers_blend", wine_glBlendFuncIndexedAMD },
18095   { "glBlendFuncSeparate", "GL_VERSION_1_4", wine_glBlendFuncSeparate },
18096   { "glBlendFuncSeparateEXT", "GL_EXT_blend_func_separate", wine_glBlendFuncSeparateEXT },
18097   { "glBlendFuncSeparateINGR", "GL_INGR_blend_func_separate", wine_glBlendFuncSeparateINGR },
18098   { "glBlendFuncSeparateIndexedAMD", "GL_AMD_draw_buffers_blend", wine_glBlendFuncSeparateIndexedAMD },
18099   { "glBlendFuncSeparatei", "GL_VERSION_4_0", wine_glBlendFuncSeparatei },
18100   { "glBlendFuncSeparateiARB", "GL_ARB_draw_buffers_blend", wine_glBlendFuncSeparateiARB },
18101   { "glBlendFunci", "GL_VERSION_4_0", wine_glBlendFunci },
18102   { "glBlendFunciARB", "GL_ARB_draw_buffers_blend", wine_glBlendFunciARB },
18103   { "glBlitFramebuffer", "GL_ARB_framebuffer_object", wine_glBlitFramebuffer },
18104   { "glBlitFramebufferEXT", "GL_EXT_framebuffer_blit", wine_glBlitFramebufferEXT },
18105   { "glBufferAddressRangeNV", "GL_NV_vertex_buffer_unified_memory", wine_glBufferAddressRangeNV },
18106   { "glBufferData", "GL_VERSION_1_5", wine_glBufferData },
18107   { "glBufferDataARB", "GL_ARB_vertex_buffer_object", wine_glBufferDataARB },
18108   { "glBufferParameteriAPPLE", "GL_APPLE_flush_buffer_range", wine_glBufferParameteriAPPLE },
18109   { "glBufferRegionEnabled", "GL_KTX_buffer_region", wine_glBufferRegionEnabled },
18110   { "glBufferSubData", "GL_VERSION_1_5", wine_glBufferSubData },
18111   { "glBufferSubDataARB", "GL_ARB_vertex_buffer_object", wine_glBufferSubDataARB },
18112   { "glCheckFramebufferStatus", "GL_ARB_framebuffer_object", wine_glCheckFramebufferStatus },
18113   { "glCheckFramebufferStatusEXT", "GL_EXT_framebuffer_object", wine_glCheckFramebufferStatusEXT },
18114   { "glCheckNamedFramebufferStatusEXT", "GL_EXT_direct_state_access", wine_glCheckNamedFramebufferStatusEXT },
18115   { "glClampColor", "GL_VERSION_3_0", wine_glClampColor },
18116   { "glClampColorARB", "GL_ARB_color_buffer_float", wine_glClampColorARB },
18117   { "glClearBufferfi", "GL_VERSION_3_0", wine_glClearBufferfi },
18118   { "glClearBufferfv", "GL_VERSION_3_0", wine_glClearBufferfv },
18119   { "glClearBufferiv", "GL_VERSION_3_0", wine_glClearBufferiv },
18120   { "glClearBufferuiv", "GL_VERSION_3_0", wine_glClearBufferuiv },
18121   { "glClearColorIiEXT", "GL_EXT_texture_integer", wine_glClearColorIiEXT },
18122   { "glClearColorIuiEXT", "GL_EXT_texture_integer", wine_glClearColorIuiEXT },
18123   { "glClearDepthdNV", "GL_NV_depth_buffer_float", wine_glClearDepthdNV },
18124   { "glClearDepthf", "GL_ARB_ES2_compatibility", wine_glClearDepthf },
18125   { "glClientActiveTexture", "GL_VERSION_1_3_DEPRECATED", wine_glClientActiveTexture },
18126   { "glClientActiveTextureARB", "GL_ARB_multitexture", wine_glClientActiveTextureARB },
18127   { "glClientActiveVertexStreamATI", "GL_ATI_vertex_streams", wine_glClientActiveVertexStreamATI },
18128   { "glClientAttribDefaultEXT", "GL_EXT_direct_state_access", wine_glClientAttribDefaultEXT },
18129   { "glClientWaitSync", "GL_ARB_sync", wine_glClientWaitSync },
18130   { "glColor3fVertex3fSUN", "GL_SUN_vertex", wine_glColor3fVertex3fSUN },
18131   { "glColor3fVertex3fvSUN", "GL_SUN_vertex", wine_glColor3fVertex3fvSUN },
18132   { "glColor3hNV", "GL_NV_half_float", wine_glColor3hNV },
18133   { "glColor3hvNV", "GL_NV_half_float", wine_glColor3hvNV },
18134   { "glColor4fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glColor4fNormal3fVertex3fSUN },
18135   { "glColor4fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glColor4fNormal3fVertex3fvSUN },
18136   { "glColor4hNV", "GL_NV_half_float", wine_glColor4hNV },
18137   { "glColor4hvNV", "GL_NV_half_float", wine_glColor4hvNV },
18138   { "glColor4ubVertex2fSUN", "GL_SUN_vertex", wine_glColor4ubVertex2fSUN },
18139   { "glColor4ubVertex2fvSUN", "GL_SUN_vertex", wine_glColor4ubVertex2fvSUN },
18140   { "glColor4ubVertex3fSUN", "GL_SUN_vertex", wine_glColor4ubVertex3fSUN },
18141   { "glColor4ubVertex3fvSUN", "GL_SUN_vertex", wine_glColor4ubVertex3fvSUN },
18142   { "glColorFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glColorFormatNV },
18143   { "glColorFragmentOp1ATI", "GL_ATI_fragment_shader", wine_glColorFragmentOp1ATI },
18144   { "glColorFragmentOp2ATI", "GL_ATI_fragment_shader", wine_glColorFragmentOp2ATI },
18145   { "glColorFragmentOp3ATI", "GL_ATI_fragment_shader", wine_glColorFragmentOp3ATI },
18146   { "glColorMaskIndexedEXT", "GL_EXT_draw_buffers2", wine_glColorMaskIndexedEXT },
18147   { "glColorMaski", "GL_VERSION_3_0", wine_glColorMaski },
18148   { "glColorP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glColorP3ui },
18149   { "glColorP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glColorP3uiv },
18150   { "glColorP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glColorP4ui },
18151   { "glColorP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glColorP4uiv },
18152   { "glColorPointerEXT", "GL_EXT_vertex_array", wine_glColorPointerEXT },
18153   { "glColorPointerListIBM", "GL_IBM_vertex_array_lists", wine_glColorPointerListIBM },
18154   { "glColorPointervINTEL", "GL_INTEL_parallel_arrays", wine_glColorPointervINTEL },
18155   { "glColorSubTable", "GL_VERSION_1_2_DEPRECATED", wine_glColorSubTable },
18156   { "glColorSubTableEXT", "GL_EXT_color_subtable", wine_glColorSubTableEXT },
18157   { "glColorTable", "GL_VERSION_1_2_DEPRECATED", wine_glColorTable },
18158   { "glColorTableEXT", "GL_EXT_paletted_texture", wine_glColorTableEXT },
18159   { "glColorTableParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glColorTableParameterfv },
18160   { "glColorTableParameterfvSGI", "GL_SGI_color_table", wine_glColorTableParameterfvSGI },
18161   { "glColorTableParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glColorTableParameteriv },
18162   { "glColorTableParameterivSGI", "GL_SGI_color_table", wine_glColorTableParameterivSGI },
18163   { "glColorTableSGI", "GL_SGI_color_table", wine_glColorTableSGI },
18164   { "glCombinerInputNV", "GL_NV_register_combiners", wine_glCombinerInputNV },
18165   { "glCombinerOutputNV", "GL_NV_register_combiners", wine_glCombinerOutputNV },
18166   { "glCombinerParameterfNV", "GL_NV_register_combiners", wine_glCombinerParameterfNV },
18167   { "glCombinerParameterfvNV", "GL_NV_register_combiners", wine_glCombinerParameterfvNV },
18168   { "glCombinerParameteriNV", "GL_NV_register_combiners", wine_glCombinerParameteriNV },
18169   { "glCombinerParameterivNV", "GL_NV_register_combiners", wine_glCombinerParameterivNV },
18170   { "glCombinerStageParameterfvNV", "GL_NV_register_combiners2", wine_glCombinerStageParameterfvNV },
18171   { "glCompileShader", "GL_VERSION_2_0", wine_glCompileShader },
18172   { "glCompileShaderARB", "GL_ARB_shader_objects", wine_glCompileShaderARB },
18173   { "glCompileShaderIncludeARB", "GL_ARB_shading_language_include", wine_glCompileShaderIncludeARB },
18174   { "glCompressedMultiTexImage1DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexImage1DEXT },
18175   { "glCompressedMultiTexImage2DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexImage2DEXT },
18176   { "glCompressedMultiTexImage3DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexImage3DEXT },
18177   { "glCompressedMultiTexSubImage1DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexSubImage1DEXT },
18178   { "glCompressedMultiTexSubImage2DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexSubImage2DEXT },
18179   { "glCompressedMultiTexSubImage3DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexSubImage3DEXT },
18180   { "glCompressedTexImage1D", "GL_VERSION_1_3", wine_glCompressedTexImage1D },
18181   { "glCompressedTexImage1DARB", "GL_ARB_texture_compression", wine_glCompressedTexImage1DARB },
18182   { "glCompressedTexImage2D", "GL_VERSION_1_3", wine_glCompressedTexImage2D },
18183   { "glCompressedTexImage2DARB", "GL_ARB_texture_compression", wine_glCompressedTexImage2DARB },
18184   { "glCompressedTexImage3D", "GL_VERSION_1_3", wine_glCompressedTexImage3D },
18185   { "glCompressedTexImage3DARB", "GL_ARB_texture_compression", wine_glCompressedTexImage3DARB },
18186   { "glCompressedTexSubImage1D", "GL_VERSION_1_3", wine_glCompressedTexSubImage1D },
18187   { "glCompressedTexSubImage1DARB", "GL_ARB_texture_compression", wine_glCompressedTexSubImage1DARB },
18188   { "glCompressedTexSubImage2D", "GL_VERSION_1_3", wine_glCompressedTexSubImage2D },
18189   { "glCompressedTexSubImage2DARB", "GL_ARB_texture_compression", wine_glCompressedTexSubImage2DARB },
18190   { "glCompressedTexSubImage3D", "GL_VERSION_1_3", wine_glCompressedTexSubImage3D },
18191   { "glCompressedTexSubImage3DARB", "GL_ARB_texture_compression", wine_glCompressedTexSubImage3DARB },
18192   { "glCompressedTextureImage1DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureImage1DEXT },
18193   { "glCompressedTextureImage2DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureImage2DEXT },
18194   { "glCompressedTextureImage3DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureImage3DEXT },
18195   { "glCompressedTextureSubImage1DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureSubImage1DEXT },
18196   { "glCompressedTextureSubImage2DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureSubImage2DEXT },
18197   { "glCompressedTextureSubImage3DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureSubImage3DEXT },
18198   { "glConvolutionFilter1D", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionFilter1D },
18199   { "glConvolutionFilter1DEXT", "GL_EXT_convolution", wine_glConvolutionFilter1DEXT },
18200   { "glConvolutionFilter2D", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionFilter2D },
18201   { "glConvolutionFilter2DEXT", "GL_EXT_convolution", wine_glConvolutionFilter2DEXT },
18202   { "glConvolutionParameterf", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionParameterf },
18203   { "glConvolutionParameterfEXT", "GL_EXT_convolution", wine_glConvolutionParameterfEXT },
18204   { "glConvolutionParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionParameterfv },
18205   { "glConvolutionParameterfvEXT", "GL_EXT_convolution", wine_glConvolutionParameterfvEXT },
18206   { "glConvolutionParameteri", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionParameteri },
18207   { "glConvolutionParameteriEXT", "GL_EXT_convolution", wine_glConvolutionParameteriEXT },
18208   { "glConvolutionParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionParameteriv },
18209   { "glConvolutionParameterivEXT", "GL_EXT_convolution", wine_glConvolutionParameterivEXT },
18210   { "glCopyBufferSubData", "GL_ARB_copy_buffer", wine_glCopyBufferSubData },
18211   { "glCopyColorSubTable", "GL_VERSION_1_2_DEPRECATED", wine_glCopyColorSubTable },
18212   { "glCopyColorSubTableEXT", "GL_EXT_color_subtable", wine_glCopyColorSubTableEXT },
18213   { "glCopyColorTable", "GL_VERSION_1_2_DEPRECATED", wine_glCopyColorTable },
18214   { "glCopyColorTableSGI", "GL_SGI_color_table", wine_glCopyColorTableSGI },
18215   { "glCopyConvolutionFilter1D", "GL_VERSION_1_2_DEPRECATED", wine_glCopyConvolutionFilter1D },
18216   { "glCopyConvolutionFilter1DEXT", "GL_EXT_convolution", wine_glCopyConvolutionFilter1DEXT },
18217   { "glCopyConvolutionFilter2D", "GL_VERSION_1_2_DEPRECATED", wine_glCopyConvolutionFilter2D },
18218   { "glCopyConvolutionFilter2DEXT", "GL_EXT_convolution", wine_glCopyConvolutionFilter2DEXT },
18219   { "glCopyImageSubDataNV", "GL_NV_copy_image", wine_glCopyImageSubDataNV },
18220   { "glCopyMultiTexImage1DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexImage1DEXT },
18221   { "glCopyMultiTexImage2DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexImage2DEXT },
18222   { "glCopyMultiTexSubImage1DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexSubImage1DEXT },
18223   { "glCopyMultiTexSubImage2DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexSubImage2DEXT },
18224   { "glCopyMultiTexSubImage3DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexSubImage3DEXT },
18225   { "glCopyTexImage1DEXT", "GL_EXT_copy_texture", wine_glCopyTexImage1DEXT },
18226   { "glCopyTexImage2DEXT", "GL_EXT_copy_texture", wine_glCopyTexImage2DEXT },
18227   { "glCopyTexSubImage1DEXT", "GL_EXT_copy_texture", wine_glCopyTexSubImage1DEXT },
18228   { "glCopyTexSubImage2DEXT", "GL_EXT_copy_texture", wine_glCopyTexSubImage2DEXT },
18229   { "glCopyTexSubImage3D", "GL_VERSION_1_2", wine_glCopyTexSubImage3D },
18230   { "glCopyTexSubImage3DEXT", "GL_EXT_copy_texture", wine_glCopyTexSubImage3DEXT },
18231   { "glCopyTextureImage1DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureImage1DEXT },
18232   { "glCopyTextureImage2DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureImage2DEXT },
18233   { "glCopyTextureSubImage1DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureSubImage1DEXT },
18234   { "glCopyTextureSubImage2DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureSubImage2DEXT },
18235   { "glCopyTextureSubImage3DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureSubImage3DEXT },
18236   { "glCreateProgram", "GL_VERSION_2_0", wine_glCreateProgram },
18237   { "glCreateProgramObjectARB", "GL_ARB_shader_objects", wine_glCreateProgramObjectARB },
18238   { "glCreateShader", "GL_VERSION_2_0", wine_glCreateShader },
18239   { "glCreateShaderObjectARB", "GL_ARB_shader_objects", wine_glCreateShaderObjectARB },
18240   { "glCreateShaderProgramEXT", "GL_EXT_separate_shader_objects", wine_glCreateShaderProgramEXT },
18241   { "glCreateShaderProgramv", "GL_ARB_separate_shader_objects", wine_glCreateShaderProgramv },
18242   { "glCreateSyncFromCLeventARB", "GL_ARB_cl_event", wine_glCreateSyncFromCLeventARB },
18243   { "glCullParameterdvEXT", "GL_EXT_cull_vertex", wine_glCullParameterdvEXT },
18244   { "glCullParameterfvEXT", "GL_EXT_cull_vertex", wine_glCullParameterfvEXT },
18245   { "glCurrentPaletteMatrixARB", "GL_ARB_matrix_palette", wine_glCurrentPaletteMatrixARB },
18246   { "glDebugMessageCallbackAMD", "GL_AMD_debug_output", wine_glDebugMessageCallbackAMD },
18247   { "glDebugMessageCallbackARB", "GL_ARB_debug_output", wine_glDebugMessageCallbackARB },
18248   { "glDebugMessageControlARB", "GL_ARB_debug_output", wine_glDebugMessageControlARB },
18249   { "glDebugMessageEnableAMD", "GL_AMD_debug_output", wine_glDebugMessageEnableAMD },
18250   { "glDebugMessageInsertAMD", "GL_AMD_debug_output", wine_glDebugMessageInsertAMD },
18251   { "glDebugMessageInsertARB", "GL_ARB_debug_output", wine_glDebugMessageInsertARB },
18252   { "glDeformSGIX", "GL_SGIX_polynomial_ffd", wine_glDeformSGIX },
18253   { "glDeformationMap3dSGIX", "GL_SGIX_polynomial_ffd", wine_glDeformationMap3dSGIX },
18254   { "glDeformationMap3fSGIX", "GL_SGIX_polynomial_ffd", wine_glDeformationMap3fSGIX },
18255   { "glDeleteAsyncMarkersSGIX", "GL_SGIX_async", wine_glDeleteAsyncMarkersSGIX },
18256   { "glDeleteBufferRegion", "GL_KTX_buffer_region", wine_glDeleteBufferRegion },
18257   { "glDeleteBuffers", "GL_VERSION_1_5", wine_glDeleteBuffers },
18258   { "glDeleteBuffersARB", "GL_ARB_vertex_buffer_object", wine_glDeleteBuffersARB },
18259   { "glDeleteFencesAPPLE", "GL_APPLE_fence", wine_glDeleteFencesAPPLE },
18260   { "glDeleteFencesNV", "GL_NV_fence", wine_glDeleteFencesNV },
18261   { "glDeleteFragmentShaderATI", "GL_ATI_fragment_shader", wine_glDeleteFragmentShaderATI },
18262   { "glDeleteFramebuffers", "GL_ARB_framebuffer_object", wine_glDeleteFramebuffers },
18263   { "glDeleteFramebuffersEXT", "GL_EXT_framebuffer_object", wine_glDeleteFramebuffersEXT },
18264   { "glDeleteNamedStringARB", "GL_ARB_shading_language_include", wine_glDeleteNamedStringARB },
18265   { "glDeleteNamesAMD", "GL_AMD_name_gen_delete", wine_glDeleteNamesAMD },
18266   { "glDeleteObjectARB", "GL_ARB_shader_objects", wine_glDeleteObjectARB },
18267   { "glDeleteObjectBufferATI", "GL_ATI_vertex_array_object", wine_glDeleteObjectBufferATI },
18268   { "glDeleteOcclusionQueriesNV", "GL_NV_occlusion_query", wine_glDeleteOcclusionQueriesNV },
18269   { "glDeletePerfMonitorsAMD", "GL_AMD_performance_monitor", wine_glDeletePerfMonitorsAMD },
18270   { "glDeleteProgram", "GL_VERSION_2_0", wine_glDeleteProgram },
18271   { "glDeleteProgramPipelines", "GL_ARB_separate_shader_objects", wine_glDeleteProgramPipelines },
18272   { "glDeleteProgramsARB", "GL_ARB_vertex_program", wine_glDeleteProgramsARB },
18273   { "glDeleteProgramsNV", "GL_NV_vertex_program", wine_glDeleteProgramsNV },
18274   { "glDeleteQueries", "GL_VERSION_1_5", wine_glDeleteQueries },
18275   { "glDeleteQueriesARB", "GL_ARB_occlusion_query", wine_glDeleteQueriesARB },
18276   { "glDeleteRenderbuffers", "GL_ARB_framebuffer_object", wine_glDeleteRenderbuffers },
18277   { "glDeleteRenderbuffersEXT", "GL_EXT_framebuffer_object", wine_glDeleteRenderbuffersEXT },
18278   { "glDeleteSamplers", "GL_ARB_sampler_objects", wine_glDeleteSamplers },
18279   { "glDeleteShader", "GL_VERSION_2_0", wine_glDeleteShader },
18280   { "glDeleteSync", "GL_ARB_sync", wine_glDeleteSync },
18281   { "glDeleteTexturesEXT", "GL_EXT_texture_object", wine_glDeleteTexturesEXT },
18282   { "glDeleteTransformFeedbacks", "GL_ARB_transform_feedback2", wine_glDeleteTransformFeedbacks },
18283   { "glDeleteTransformFeedbacksNV", "GL_NV_transform_feedback2", wine_glDeleteTransformFeedbacksNV },
18284   { "glDeleteVertexArrays", "GL_ARB_vertex_array_object", wine_glDeleteVertexArrays },
18285   { "glDeleteVertexArraysAPPLE", "GL_APPLE_vertex_array_object", wine_glDeleteVertexArraysAPPLE },
18286   { "glDeleteVertexShaderEXT", "GL_EXT_vertex_shader", wine_glDeleteVertexShaderEXT },
18287   { "glDepthBoundsEXT", "GL_EXT_depth_bounds_test", wine_glDepthBoundsEXT },
18288   { "glDepthBoundsdNV", "GL_NV_depth_buffer_float", wine_glDepthBoundsdNV },
18289   { "glDepthRangeArrayv", "GL_ARB_viewport_array", wine_glDepthRangeArrayv },
18290   { "glDepthRangeIndexed", "GL_ARB_viewport_array", wine_glDepthRangeIndexed },
18291   { "glDepthRangedNV", "GL_NV_depth_buffer_float", wine_glDepthRangedNV },
18292   { "glDepthRangef", "GL_ARB_ES2_compatibility", wine_glDepthRangef },
18293   { "glDetachObjectARB", "GL_ARB_shader_objects", wine_glDetachObjectARB },
18294   { "glDetachShader", "GL_VERSION_2_0", wine_glDetachShader },
18295   { "glDetailTexFuncSGIS", "GL_SGIS_detail_texture", wine_glDetailTexFuncSGIS },
18296   { "glDisableClientStateIndexedEXT", "GL_EXT_direct_state_access", wine_glDisableClientStateIndexedEXT },
18297   { "glDisableIndexedEXT", "GL_EXT_draw_buffers2", wine_glDisableIndexedEXT },
18298   { "glDisableVariantClientStateEXT", "GL_EXT_vertex_shader", wine_glDisableVariantClientStateEXT },
18299   { "glDisableVertexAttribAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glDisableVertexAttribAPPLE },
18300   { "glDisableVertexAttribArray", "GL_VERSION_2_0", wine_glDisableVertexAttribArray },
18301   { "glDisableVertexAttribArrayARB", "GL_ARB_vertex_program", wine_glDisableVertexAttribArrayARB },
18302   { "glDisablei", "GL_VERSION_3_0", wine_glDisablei },
18303   { "glDrawArraysEXT", "GL_EXT_vertex_array", wine_glDrawArraysEXT },
18304   { "glDrawArraysIndirect", "GL_ARB_draw_indirect", wine_glDrawArraysIndirect },
18305   { "glDrawArraysInstanced", "GL_VERSION_3_1", wine_glDrawArraysInstanced },
18306   { "glDrawArraysInstancedARB", "GL_ARB_draw_instanced", wine_glDrawArraysInstancedARB },
18307   { "glDrawArraysInstancedEXT", "GL_EXT_draw_instanced", wine_glDrawArraysInstancedEXT },
18308   { "glDrawBufferRegion", "GL_KTX_buffer_region", wine_glDrawBufferRegion },
18309   { "glDrawBuffers", "GL_VERSION_2_0", wine_glDrawBuffers },
18310   { "glDrawBuffersARB", "GL_ARB_draw_buffers", wine_glDrawBuffersARB },
18311   { "glDrawBuffersATI", "GL_ATI_draw_buffers", wine_glDrawBuffersATI },
18312   { "glDrawElementArrayAPPLE", "GL_APPLE_element_array", wine_glDrawElementArrayAPPLE },
18313   { "glDrawElementArrayATI", "GL_ATI_element_array", wine_glDrawElementArrayATI },
18314   { "glDrawElementsBaseVertex", "GL_ARB_draw_elements_base_vertex", wine_glDrawElementsBaseVertex },
18315   { "glDrawElementsIndirect", "GL_ARB_draw_indirect", wine_glDrawElementsIndirect },
18316   { "glDrawElementsInstanced", "GL_VERSION_3_1", wine_glDrawElementsInstanced },
18317   { "glDrawElementsInstancedARB", "GL_ARB_draw_instanced", wine_glDrawElementsInstancedARB },
18318   { "glDrawElementsInstancedBaseVertex", "GL_ARB_draw_elements_base_vertex", wine_glDrawElementsInstancedBaseVertex },
18319   { "glDrawElementsInstancedEXT", "GL_EXT_draw_instanced", wine_glDrawElementsInstancedEXT },
18320   { "glDrawMeshArraysSUN", "GL_SUN_mesh_array", wine_glDrawMeshArraysSUN },
18321   { "glDrawRangeElementArrayAPPLE", "GL_APPLE_element_array", wine_glDrawRangeElementArrayAPPLE },
18322   { "glDrawRangeElementArrayATI", "GL_ATI_element_array", wine_glDrawRangeElementArrayATI },
18323   { "glDrawRangeElements", "GL_VERSION_1_2", wine_glDrawRangeElements },
18324   { "glDrawRangeElementsBaseVertex", "GL_ARB_draw_elements_base_vertex", wine_glDrawRangeElementsBaseVertex },
18325   { "glDrawRangeElementsEXT", "GL_EXT_draw_range_elements", wine_glDrawRangeElementsEXT },
18326   { "glDrawTransformFeedback", "GL_ARB_transform_feedback2", wine_glDrawTransformFeedback },
18327   { "glDrawTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glDrawTransformFeedbackNV },
18328   { "glDrawTransformFeedbackStream", "GL_ARB_transform_feedback3", wine_glDrawTransformFeedbackStream },
18329   { "glEdgeFlagFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glEdgeFlagFormatNV },
18330   { "glEdgeFlagPointerEXT", "GL_EXT_vertex_array", wine_glEdgeFlagPointerEXT },
18331   { "glEdgeFlagPointerListIBM", "GL_IBM_vertex_array_lists", wine_glEdgeFlagPointerListIBM },
18332   { "glElementPointerAPPLE", "GL_APPLE_element_array", wine_glElementPointerAPPLE },
18333   { "glElementPointerATI", "GL_ATI_element_array", wine_glElementPointerATI },
18334   { "glEnableClientStateIndexedEXT", "GL_EXT_direct_state_access", wine_glEnableClientStateIndexedEXT },
18335   { "glEnableIndexedEXT", "GL_EXT_draw_buffers2", wine_glEnableIndexedEXT },
18336   { "glEnableVariantClientStateEXT", "GL_EXT_vertex_shader", wine_glEnableVariantClientStateEXT },
18337   { "glEnableVertexAttribAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glEnableVertexAttribAPPLE },
18338   { "glEnableVertexAttribArray", "GL_VERSION_2_0", wine_glEnableVertexAttribArray },
18339   { "glEnableVertexAttribArrayARB", "GL_ARB_vertex_program", wine_glEnableVertexAttribArrayARB },
18340   { "glEnablei", "GL_VERSION_3_0", wine_glEnablei },
18341   { "glEndConditionalRender", "GL_VERSION_3_0", wine_glEndConditionalRender },
18342   { "glEndConditionalRenderNV", "GL_NV_conditional_render", wine_glEndConditionalRenderNV },
18343   { "glEndFragmentShaderATI", "GL_ATI_fragment_shader", wine_glEndFragmentShaderATI },
18344   { "glEndOcclusionQueryNV", "GL_NV_occlusion_query", wine_glEndOcclusionQueryNV },
18345   { "glEndPerfMonitorAMD", "GL_AMD_performance_monitor", wine_glEndPerfMonitorAMD },
18346   { "glEndQuery", "GL_VERSION_1_5", wine_glEndQuery },
18347   { "glEndQueryARB", "GL_ARB_occlusion_query", wine_glEndQueryARB },
18348   { "glEndQueryIndexed", "GL_ARB_transform_feedback3", wine_glEndQueryIndexed },
18349   { "glEndTransformFeedback", "GL_VERSION_3_0", wine_glEndTransformFeedback },
18350   { "glEndTransformFeedbackEXT", "GL_EXT_transform_feedback", wine_glEndTransformFeedbackEXT },
18351   { "glEndTransformFeedbackNV", "GL_NV_transform_feedback", wine_glEndTransformFeedbackNV },
18352   { "glEndVertexShaderEXT", "GL_EXT_vertex_shader", wine_glEndVertexShaderEXT },
18353   { "glEndVideoCaptureNV", "GL_NV_video_capture", wine_glEndVideoCaptureNV },
18354   { "glEvalMapsNV", "GL_NV_evaluators", wine_glEvalMapsNV },
18355   { "glExecuteProgramNV", "GL_NV_vertex_program", wine_glExecuteProgramNV },
18356   { "glExtractComponentEXT", "GL_EXT_vertex_shader", wine_glExtractComponentEXT },
18357   { "glFenceSync", "GL_ARB_sync", wine_glFenceSync },
18358   { "glFinalCombinerInputNV", "GL_NV_register_combiners", wine_glFinalCombinerInputNV },
18359   { "glFinishAsyncSGIX", "GL_SGIX_async", wine_glFinishAsyncSGIX },
18360   { "glFinishFenceAPPLE", "GL_APPLE_fence", wine_glFinishFenceAPPLE },
18361   { "glFinishFenceNV", "GL_NV_fence", wine_glFinishFenceNV },
18362   { "glFinishObjectAPPLE", "GL_APPLE_fence", wine_glFinishObjectAPPLE },
18363   { "glFinishTextureSUNX", "GL_SUNX_constant_data", wine_glFinishTextureSUNX },
18364   { "glFlushMappedBufferRange", "GL_ARB_map_buffer_range", wine_glFlushMappedBufferRange },
18365   { "glFlushMappedBufferRangeAPPLE", "GL_APPLE_flush_buffer_range", wine_glFlushMappedBufferRangeAPPLE },
18366   { "glFlushMappedNamedBufferRangeEXT", "GL_EXT_direct_state_access", wine_glFlushMappedNamedBufferRangeEXT },
18367   { "glFlushPixelDataRangeNV", "GL_NV_pixel_data_range", wine_glFlushPixelDataRangeNV },
18368   { "glFlushRasterSGIX", "GL_SGIX_flush_raster", wine_glFlushRasterSGIX },
18369   { "glFlushVertexArrayRangeAPPLE", "GL_APPLE_vertex_array_range", wine_glFlushVertexArrayRangeAPPLE },
18370   { "glFlushVertexArrayRangeNV", "GL_NV_vertex_array_range", wine_glFlushVertexArrayRangeNV },
18371   { "glFogCoordFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glFogCoordFormatNV },
18372   { "glFogCoordPointer", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoordPointer },
18373   { "glFogCoordPointerEXT", "GL_EXT_fog_coord", wine_glFogCoordPointerEXT },
18374   { "glFogCoordPointerListIBM", "GL_IBM_vertex_array_lists", wine_glFogCoordPointerListIBM },
18375   { "glFogCoordd", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoordd },
18376   { "glFogCoorddEXT", "GL_EXT_fog_coord", wine_glFogCoorddEXT },
18377   { "glFogCoorddv", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoorddv },
18378   { "glFogCoorddvEXT", "GL_EXT_fog_coord", wine_glFogCoorddvEXT },
18379   { "glFogCoordf", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoordf },
18380   { "glFogCoordfEXT", "GL_EXT_fog_coord", wine_glFogCoordfEXT },
18381   { "glFogCoordfv", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoordfv },
18382   { "glFogCoordfvEXT", "GL_EXT_fog_coord", wine_glFogCoordfvEXT },
18383   { "glFogCoordhNV", "GL_NV_half_float", wine_glFogCoordhNV },
18384   { "glFogCoordhvNV", "GL_NV_half_float", wine_glFogCoordhvNV },
18385   { "glFogFuncSGIS", "GL_SGIS_fog_function", wine_glFogFuncSGIS },
18386   { "glFragmentColorMaterialSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentColorMaterialSGIX },
18387   { "glFragmentLightModelfSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightModelfSGIX },
18388   { "glFragmentLightModelfvSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightModelfvSGIX },
18389   { "glFragmentLightModeliSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightModeliSGIX },
18390   { "glFragmentLightModelivSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightModelivSGIX },
18391   { "glFragmentLightfSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightfSGIX },
18392   { "glFragmentLightfvSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightfvSGIX },
18393   { "glFragmentLightiSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightiSGIX },
18394   { "glFragmentLightivSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightivSGIX },
18395   { "glFragmentMaterialfSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentMaterialfSGIX },
18396   { "glFragmentMaterialfvSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentMaterialfvSGIX },
18397   { "glFragmentMaterialiSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentMaterialiSGIX },
18398   { "glFragmentMaterialivSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentMaterialivSGIX },
18399   { "glFrameTerminatorGREMEDY", "GL_GREMEDY_frame_terminator", wine_glFrameTerminatorGREMEDY },
18400   { "glFrameZoomSGIX", "GL_SGIX_framezoom", wine_glFrameZoomSGIX },
18401   { "glFramebufferDrawBufferEXT", "GL_EXT_direct_state_access", wine_glFramebufferDrawBufferEXT },
18402   { "glFramebufferDrawBuffersEXT", "GL_EXT_direct_state_access", wine_glFramebufferDrawBuffersEXT },
18403   { "glFramebufferReadBufferEXT", "GL_EXT_direct_state_access", wine_glFramebufferReadBufferEXT },
18404   { "glFramebufferRenderbuffer", "GL_ARB_framebuffer_object", wine_glFramebufferRenderbuffer },
18405   { "glFramebufferRenderbufferEXT", "GL_EXT_framebuffer_object", wine_glFramebufferRenderbufferEXT },
18406   { "glFramebufferTexture", "GL_VERSION_3_2", wine_glFramebufferTexture },
18407   { "glFramebufferTexture1D", "GL_ARB_framebuffer_object", wine_glFramebufferTexture1D },
18408   { "glFramebufferTexture1DEXT", "GL_EXT_framebuffer_object", wine_glFramebufferTexture1DEXT },
18409   { "glFramebufferTexture2D", "GL_ARB_framebuffer_object", wine_glFramebufferTexture2D },
18410   { "glFramebufferTexture2DEXT", "GL_EXT_framebuffer_object", wine_glFramebufferTexture2DEXT },
18411   { "glFramebufferTexture3D", "GL_ARB_framebuffer_object", wine_glFramebufferTexture3D },
18412   { "glFramebufferTexture3DEXT", "GL_EXT_framebuffer_object", wine_glFramebufferTexture3DEXT },
18413   { "glFramebufferTextureARB", "GL_ARB_geometry_shader4", wine_glFramebufferTextureARB },
18414   { "glFramebufferTextureEXT", "GL_NV_geometry_program4", wine_glFramebufferTextureEXT },
18415   { "glFramebufferTextureFaceARB", "GL_ARB_geometry_shader4", wine_glFramebufferTextureFaceARB },
18416   { "glFramebufferTextureFaceEXT", "GL_NV_geometry_program4", wine_glFramebufferTextureFaceEXT },
18417   { "glFramebufferTextureLayer", "GL_ARB_framebuffer_object", wine_glFramebufferTextureLayer },
18418   { "glFramebufferTextureLayerARB", "GL_ARB_geometry_shader4", wine_glFramebufferTextureLayerARB },
18419   { "glFramebufferTextureLayerEXT", "GL_NV_geometry_program4", wine_glFramebufferTextureLayerEXT },
18420   { "glFreeObjectBufferATI", "GL_ATI_vertex_array_object", wine_glFreeObjectBufferATI },
18421   { "glGenAsyncMarkersSGIX", "GL_SGIX_async", wine_glGenAsyncMarkersSGIX },
18422   { "glGenBuffers", "GL_VERSION_1_5", wine_glGenBuffers },
18423   { "glGenBuffersARB", "GL_ARB_vertex_buffer_object", wine_glGenBuffersARB },
18424   { "glGenFencesAPPLE", "GL_APPLE_fence", wine_glGenFencesAPPLE },
18425   { "glGenFencesNV", "GL_NV_fence", wine_glGenFencesNV },
18426   { "glGenFragmentShadersATI", "GL_ATI_fragment_shader", wine_glGenFragmentShadersATI },
18427   { "glGenFramebuffers", "GL_ARB_framebuffer_object", wine_glGenFramebuffers },
18428   { "glGenFramebuffersEXT", "GL_EXT_framebuffer_object", wine_glGenFramebuffersEXT },
18429   { "glGenNamesAMD", "GL_AMD_name_gen_delete", wine_glGenNamesAMD },
18430   { "glGenOcclusionQueriesNV", "GL_NV_occlusion_query", wine_glGenOcclusionQueriesNV },
18431   { "glGenPerfMonitorsAMD", "GL_AMD_performance_monitor", wine_glGenPerfMonitorsAMD },
18432   { "glGenProgramPipelines", "GL_ARB_separate_shader_objects", wine_glGenProgramPipelines },
18433   { "glGenProgramsARB", "GL_ARB_vertex_program", wine_glGenProgramsARB },
18434   { "glGenProgramsNV", "GL_NV_vertex_program", wine_glGenProgramsNV },
18435   { "glGenQueries", "GL_VERSION_1_5", wine_glGenQueries },
18436   { "glGenQueriesARB", "GL_ARB_occlusion_query", wine_glGenQueriesARB },
18437   { "glGenRenderbuffers", "GL_ARB_framebuffer_object", wine_glGenRenderbuffers },
18438   { "glGenRenderbuffersEXT", "GL_EXT_framebuffer_object", wine_glGenRenderbuffersEXT },
18439   { "glGenSamplers", "GL_ARB_sampler_objects", wine_glGenSamplers },
18440   { "glGenSymbolsEXT", "GL_EXT_vertex_shader", wine_glGenSymbolsEXT },
18441   { "glGenTexturesEXT", "GL_EXT_texture_object", wine_glGenTexturesEXT },
18442   { "glGenTransformFeedbacks", "GL_ARB_transform_feedback2", wine_glGenTransformFeedbacks },
18443   { "glGenTransformFeedbacksNV", "GL_NV_transform_feedback2", wine_glGenTransformFeedbacksNV },
18444   { "glGenVertexArrays", "GL_ARB_vertex_array_object", wine_glGenVertexArrays },
18445   { "glGenVertexArraysAPPLE", "GL_APPLE_vertex_array_object", wine_glGenVertexArraysAPPLE },
18446   { "glGenVertexShadersEXT", "GL_EXT_vertex_shader", wine_glGenVertexShadersEXT },
18447   { "glGenerateMipmap", "GL_ARB_framebuffer_object", wine_glGenerateMipmap },
18448   { "glGenerateMipmapEXT", "GL_EXT_framebuffer_object", wine_glGenerateMipmapEXT },
18449   { "glGenerateMultiTexMipmapEXT", "GL_EXT_direct_state_access", wine_glGenerateMultiTexMipmapEXT },
18450   { "glGenerateTextureMipmapEXT", "GL_EXT_direct_state_access", wine_glGenerateTextureMipmapEXT },
18451   { "glGetActiveAttrib", "GL_VERSION_2_0", wine_glGetActiveAttrib },
18452   { "glGetActiveAttribARB", "GL_ARB_vertex_shader", wine_glGetActiveAttribARB },
18453   { "glGetActiveSubroutineName", "GL_ARB_shader_subroutine", wine_glGetActiveSubroutineName },
18454   { "glGetActiveSubroutineUniformName", "GL_ARB_shader_subroutine", wine_glGetActiveSubroutineUniformName },
18455   { "glGetActiveSubroutineUniformiv", "GL_ARB_shader_subroutine", wine_glGetActiveSubroutineUniformiv },
18456   { "glGetActiveUniform", "GL_VERSION_2_0", wine_glGetActiveUniform },
18457   { "glGetActiveUniformARB", "GL_ARB_shader_objects", wine_glGetActiveUniformARB },
18458   { "glGetActiveUniformBlockName", "GL_ARB_uniform_buffer_object", wine_glGetActiveUniformBlockName },
18459   { "glGetActiveUniformBlockiv", "GL_ARB_uniform_buffer_object", wine_glGetActiveUniformBlockiv },
18460   { "glGetActiveUniformName", "GL_ARB_uniform_buffer_object", wine_glGetActiveUniformName },
18461   { "glGetActiveUniformsiv", "GL_ARB_uniform_buffer_object", wine_glGetActiveUniformsiv },
18462   { "glGetActiveVaryingNV", "GL_NV_transform_feedback", wine_glGetActiveVaryingNV },
18463   { "glGetArrayObjectfvATI", "GL_ATI_vertex_array_object", wine_glGetArrayObjectfvATI },
18464   { "glGetArrayObjectivATI", "GL_ATI_vertex_array_object", wine_glGetArrayObjectivATI },
18465   { "glGetAttachedObjectsARB", "GL_ARB_shader_objects", wine_glGetAttachedObjectsARB },
18466   { "glGetAttachedShaders", "GL_VERSION_2_0", wine_glGetAttachedShaders },
18467   { "glGetAttribLocation", "GL_VERSION_2_0", wine_glGetAttribLocation },
18468   { "glGetAttribLocationARB", "GL_ARB_vertex_shader", wine_glGetAttribLocationARB },
18469   { "glGetBooleanIndexedvEXT", "GL_EXT_draw_buffers2", wine_glGetBooleanIndexedvEXT },
18470   { "glGetBooleani_v", "GL_VERSION_3_0", wine_glGetBooleani_v },
18471   { "glGetBufferParameteri64v", "GL_VERSION_3_2", wine_glGetBufferParameteri64v },
18472   { "glGetBufferParameteriv", "GL_VERSION_1_5", wine_glGetBufferParameteriv },
18473   { "glGetBufferParameterivARB", "GL_ARB_vertex_buffer_object", wine_glGetBufferParameterivARB },
18474   { "glGetBufferParameterui64vNV", "GL_NV_shader_buffer_load", wine_glGetBufferParameterui64vNV },
18475   { "glGetBufferPointerv", "GL_VERSION_1_5", wine_glGetBufferPointerv },
18476   { "glGetBufferPointervARB", "GL_ARB_vertex_buffer_object", wine_glGetBufferPointervARB },
18477   { "glGetBufferSubData", "GL_VERSION_1_5", wine_glGetBufferSubData },
18478   { "glGetBufferSubDataARB", "GL_ARB_vertex_buffer_object", wine_glGetBufferSubDataARB },
18479   { "glGetColorTable", "GL_VERSION_1_2_DEPRECATED", wine_glGetColorTable },
18480   { "glGetColorTableEXT", "GL_EXT_paletted_texture", wine_glGetColorTableEXT },
18481   { "glGetColorTableParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glGetColorTableParameterfv },
18482   { "glGetColorTableParameterfvEXT", "GL_EXT_paletted_texture", wine_glGetColorTableParameterfvEXT },
18483   { "glGetColorTableParameterfvSGI", "GL_SGI_color_table", wine_glGetColorTableParameterfvSGI },
18484   { "glGetColorTableParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glGetColorTableParameteriv },
18485   { "glGetColorTableParameterivEXT", "GL_EXT_paletted_texture", wine_glGetColorTableParameterivEXT },
18486   { "glGetColorTableParameterivSGI", "GL_SGI_color_table", wine_glGetColorTableParameterivSGI },
18487   { "glGetColorTableSGI", "GL_SGI_color_table", wine_glGetColorTableSGI },
18488   { "glGetCombinerInputParameterfvNV", "GL_NV_register_combiners", wine_glGetCombinerInputParameterfvNV },
18489   { "glGetCombinerInputParameterivNV", "GL_NV_register_combiners", wine_glGetCombinerInputParameterivNV },
18490   { "glGetCombinerOutputParameterfvNV", "GL_NV_register_combiners", wine_glGetCombinerOutputParameterfvNV },
18491   { "glGetCombinerOutputParameterivNV", "GL_NV_register_combiners", wine_glGetCombinerOutputParameterivNV },
18492   { "glGetCombinerStageParameterfvNV", "GL_NV_register_combiners2", wine_glGetCombinerStageParameterfvNV },
18493   { "glGetCompressedMultiTexImageEXT", "GL_EXT_direct_state_access", wine_glGetCompressedMultiTexImageEXT },
18494   { "glGetCompressedTexImage", "GL_VERSION_1_3", wine_glGetCompressedTexImage },
18495   { "glGetCompressedTexImageARB", "GL_ARB_texture_compression", wine_glGetCompressedTexImageARB },
18496   { "glGetCompressedTextureImageEXT", "GL_EXT_direct_state_access", wine_glGetCompressedTextureImageEXT },
18497   { "glGetConvolutionFilter", "GL_VERSION_1_2_DEPRECATED", wine_glGetConvolutionFilter },
18498   { "glGetConvolutionFilterEXT", "GL_EXT_convolution", wine_glGetConvolutionFilterEXT },
18499   { "glGetConvolutionParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glGetConvolutionParameterfv },
18500   { "glGetConvolutionParameterfvEXT", "GL_EXT_convolution", wine_glGetConvolutionParameterfvEXT },
18501   { "glGetConvolutionParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glGetConvolutionParameteriv },
18502   { "glGetConvolutionParameterivEXT", "GL_EXT_convolution", wine_glGetConvolutionParameterivEXT },
18503   { "glGetDebugMessageLogAMD", "GL_AMD_debug_output", wine_glGetDebugMessageLogAMD },
18504   { "glGetDebugMessageLogARB", "GL_ARB_debug_output", wine_glGetDebugMessageLogARB },
18505   { "glGetDetailTexFuncSGIS", "GL_SGIS_detail_texture", wine_glGetDetailTexFuncSGIS },
18506   { "glGetDoubleIndexedvEXT", "GL_EXT_direct_state_access", wine_glGetDoubleIndexedvEXT },
18507   { "glGetDoublei_v", "GL_ARB_viewport_array", wine_glGetDoublei_v },
18508   { "glGetFenceivNV", "GL_NV_fence", wine_glGetFenceivNV },
18509   { "glGetFinalCombinerInputParameterfvNV", "GL_NV_register_combiners", wine_glGetFinalCombinerInputParameterfvNV },
18510   { "glGetFinalCombinerInputParameterivNV", "GL_NV_register_combiners", wine_glGetFinalCombinerInputParameterivNV },
18511   { "glGetFloatIndexedvEXT", "GL_EXT_direct_state_access", wine_glGetFloatIndexedvEXT },
18512   { "glGetFloati_v", "GL_ARB_viewport_array", wine_glGetFloati_v },
18513   { "glGetFogFuncSGIS", "GL_SGIS_fog_function", wine_glGetFogFuncSGIS },
18514   { "glGetFragDataIndex", "GL_ARB_blend_func_extended", wine_glGetFragDataIndex },
18515   { "glGetFragDataLocation", "GL_VERSION_3_0", wine_glGetFragDataLocation },
18516   { "glGetFragDataLocationEXT", "GL_EXT_gpu_shader4", wine_glGetFragDataLocationEXT },
18517   { "glGetFragmentLightfvSGIX", "GL_SGIX_fragment_lighting", wine_glGetFragmentLightfvSGIX },
18518   { "glGetFragmentLightivSGIX", "GL_SGIX_fragment_lighting", wine_glGetFragmentLightivSGIX },
18519   { "glGetFragmentMaterialfvSGIX", "GL_SGIX_fragment_lighting", wine_glGetFragmentMaterialfvSGIX },
18520   { "glGetFragmentMaterialivSGIX", "GL_SGIX_fragment_lighting", wine_glGetFragmentMaterialivSGIX },
18521   { "glGetFramebufferAttachmentParameteriv", "GL_ARB_framebuffer_object", wine_glGetFramebufferAttachmentParameteriv },
18522   { "glGetFramebufferAttachmentParameterivEXT", "GL_EXT_framebuffer_object", wine_glGetFramebufferAttachmentParameterivEXT },
18523   { "glGetFramebufferParameterivEXT", "GL_EXT_direct_state_access", wine_glGetFramebufferParameterivEXT },
18524   { "glGetGraphicsResetStatusARB", "GL_ARB_robustness", wine_glGetGraphicsResetStatusARB },
18525   { "glGetHandleARB", "GL_ARB_shader_objects", wine_glGetHandleARB },
18526   { "glGetHistogram", "GL_VERSION_1_2_DEPRECATED", wine_glGetHistogram },
18527   { "glGetHistogramEXT", "GL_EXT_histogram", wine_glGetHistogramEXT },
18528   { "glGetHistogramParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glGetHistogramParameterfv },
18529   { "glGetHistogramParameterfvEXT", "GL_EXT_histogram", wine_glGetHistogramParameterfvEXT },
18530   { "glGetHistogramParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glGetHistogramParameteriv },
18531   { "glGetHistogramParameterivEXT", "GL_EXT_histogram", wine_glGetHistogramParameterivEXT },
18532   { "glGetImageTransformParameterfvHP", "GL_HP_image_transform", wine_glGetImageTransformParameterfvHP },
18533   { "glGetImageTransformParameterivHP", "GL_HP_image_transform", wine_glGetImageTransformParameterivHP },
18534   { "glGetInfoLogARB", "GL_ARB_shader_objects", wine_glGetInfoLogARB },
18535   { "glGetInstrumentsSGIX", "GL_SGIX_instruments", wine_glGetInstrumentsSGIX },
18536   { "glGetInteger64i_v", "GL_VERSION_3_2", wine_glGetInteger64i_v },
18537   { "glGetInteger64v", "GL_ARB_sync", wine_glGetInteger64v },
18538   { "glGetIntegerIndexedvEXT", "GL_EXT_draw_buffers2", wine_glGetIntegerIndexedvEXT },
18539   { "glGetIntegeri_v", "GL_VERSION_3_0", wine_glGetIntegeri_v },
18540   { "glGetIntegerui64i_vNV", "GL_NV_vertex_buffer_unified_memory", wine_glGetIntegerui64i_vNV },
18541   { "glGetIntegerui64vNV", "GL_NV_shader_buffer_load", wine_glGetIntegerui64vNV },
18542   { "glGetInvariantBooleanvEXT", "GL_EXT_vertex_shader", wine_glGetInvariantBooleanvEXT },
18543   { "glGetInvariantFloatvEXT", "GL_EXT_vertex_shader", wine_glGetInvariantFloatvEXT },
18544   { "glGetInvariantIntegervEXT", "GL_EXT_vertex_shader", wine_glGetInvariantIntegervEXT },
18545   { "glGetListParameterfvSGIX", "GL_SGIX_list_priority", wine_glGetListParameterfvSGIX },
18546   { "glGetListParameterivSGIX", "GL_SGIX_list_priority", wine_glGetListParameterivSGIX },
18547   { "glGetLocalConstantBooleanvEXT", "GL_EXT_vertex_shader", wine_glGetLocalConstantBooleanvEXT },
18548   { "glGetLocalConstantFloatvEXT", "GL_EXT_vertex_shader", wine_glGetLocalConstantFloatvEXT },
18549   { "glGetLocalConstantIntegervEXT", "GL_EXT_vertex_shader", wine_glGetLocalConstantIntegervEXT },
18550   { "glGetMapAttribParameterfvNV", "GL_NV_evaluators", wine_glGetMapAttribParameterfvNV },
18551   { "glGetMapAttribParameterivNV", "GL_NV_evaluators", wine_glGetMapAttribParameterivNV },
18552   { "glGetMapControlPointsNV", "GL_NV_evaluators", wine_glGetMapControlPointsNV },
18553   { "glGetMapParameterfvNV", "GL_NV_evaluators", wine_glGetMapParameterfvNV },
18554   { "glGetMapParameterivNV", "GL_NV_evaluators", wine_glGetMapParameterivNV },
18555   { "glGetMinmax", "GL_VERSION_1_2_DEPRECATED", wine_glGetMinmax },
18556   { "glGetMinmaxEXT", "GL_EXT_histogram", wine_glGetMinmaxEXT },
18557   { "glGetMinmaxParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glGetMinmaxParameterfv },
18558   { "glGetMinmaxParameterfvEXT", "GL_EXT_histogram", wine_glGetMinmaxParameterfvEXT },
18559   { "glGetMinmaxParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glGetMinmaxParameteriv },
18560   { "glGetMinmaxParameterivEXT", "GL_EXT_histogram", wine_glGetMinmaxParameterivEXT },
18561   { "glGetMultiTexEnvfvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexEnvfvEXT },
18562   { "glGetMultiTexEnvivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexEnvivEXT },
18563   { "glGetMultiTexGendvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexGendvEXT },
18564   { "glGetMultiTexGenfvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexGenfvEXT },
18565   { "glGetMultiTexGenivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexGenivEXT },
18566   { "glGetMultiTexImageEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexImageEXT },
18567   { "glGetMultiTexLevelParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexLevelParameterfvEXT },
18568   { "glGetMultiTexLevelParameterivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexLevelParameterivEXT },
18569   { "glGetMultiTexParameterIivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexParameterIivEXT },
18570   { "glGetMultiTexParameterIuivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexParameterIuivEXT },
18571   { "glGetMultiTexParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexParameterfvEXT },
18572   { "glGetMultiTexParameterivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexParameterivEXT },
18573   { "glGetMultisamplefv", "GL_ARB_texture_multisample", wine_glGetMultisamplefv },
18574   { "glGetMultisamplefvNV", "GL_NV_explicit_multisample", wine_glGetMultisamplefvNV },
18575   { "glGetNamedBufferParameterivEXT", "GL_EXT_direct_state_access", wine_glGetNamedBufferParameterivEXT },
18576   { "glGetNamedBufferParameterui64vNV", "GL_NV_shader_buffer_load", wine_glGetNamedBufferParameterui64vNV },
18577   { "glGetNamedBufferPointervEXT", "GL_EXT_direct_state_access", wine_glGetNamedBufferPointervEXT },
18578   { "glGetNamedBufferSubDataEXT", "GL_EXT_direct_state_access", wine_glGetNamedBufferSubDataEXT },
18579   { "glGetNamedFramebufferAttachmentParameterivEXT", "GL_EXT_direct_state_access", wine_glGetNamedFramebufferAttachmentParameterivEXT },
18580   { "glGetNamedProgramLocalParameterIivEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramLocalParameterIivEXT },
18581   { "glGetNamedProgramLocalParameterIuivEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramLocalParameterIuivEXT },
18582   { "glGetNamedProgramLocalParameterdvEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramLocalParameterdvEXT },
18583   { "glGetNamedProgramLocalParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramLocalParameterfvEXT },
18584   { "glGetNamedProgramStringEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramStringEXT },
18585   { "glGetNamedProgramivEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramivEXT },
18586   { "glGetNamedRenderbufferParameterivEXT", "GL_EXT_direct_state_access", wine_glGetNamedRenderbufferParameterivEXT },
18587   { "glGetNamedStringARB", "GL_ARB_shading_language_include", wine_glGetNamedStringARB },
18588   { "glGetNamedStringivARB", "GL_ARB_shading_language_include", wine_glGetNamedStringivARB },
18589   { "glGetObjectBufferfvATI", "GL_ATI_vertex_array_object", wine_glGetObjectBufferfvATI },
18590   { "glGetObjectBufferivATI", "GL_ATI_vertex_array_object", wine_glGetObjectBufferivATI },
18591   { "glGetObjectParameterfvARB", "GL_ARB_shader_objects", wine_glGetObjectParameterfvARB },
18592   { "glGetObjectParameterivAPPLE", "GL_APPLE_object_purgeable", wine_glGetObjectParameterivAPPLE },
18593   { "glGetObjectParameterivARB", "GL_ARB_shader_objects", wine_glGetObjectParameterivARB },
18594   { "glGetOcclusionQueryivNV", "GL_NV_occlusion_query", wine_glGetOcclusionQueryivNV },
18595   { "glGetOcclusionQueryuivNV", "GL_NV_occlusion_query", wine_glGetOcclusionQueryuivNV },
18596   { "glGetPerfMonitorCounterDataAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorCounterDataAMD },
18597   { "glGetPerfMonitorCounterInfoAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorCounterInfoAMD },
18598   { "glGetPerfMonitorCounterStringAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorCounterStringAMD },
18599   { "glGetPerfMonitorCountersAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorCountersAMD },
18600   { "glGetPerfMonitorGroupStringAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorGroupStringAMD },
18601   { "glGetPerfMonitorGroupsAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorGroupsAMD },
18602   { "glGetPixelTexGenParameterfvSGIS", "GL_SGIS_pixel_texture", wine_glGetPixelTexGenParameterfvSGIS },
18603   { "glGetPixelTexGenParameterivSGIS", "GL_SGIS_pixel_texture", wine_glGetPixelTexGenParameterivSGIS },
18604   { "glGetPointerIndexedvEXT", "GL_EXT_direct_state_access", wine_glGetPointerIndexedvEXT },
18605   { "glGetPointervEXT", "GL_EXT_vertex_array", wine_glGetPointervEXT },
18606   { "glGetProgramBinary", "GL_ARB_get_program_binary", wine_glGetProgramBinary },
18607   { "glGetProgramEnvParameterIivNV", "GL_NV_gpu_program4", wine_glGetProgramEnvParameterIivNV },
18608   { "glGetProgramEnvParameterIuivNV", "GL_NV_gpu_program4", wine_glGetProgramEnvParameterIuivNV },
18609   { "glGetProgramEnvParameterdvARB", "GL_ARB_vertex_program", wine_glGetProgramEnvParameterdvARB },
18610   { "glGetProgramEnvParameterfvARB", "GL_ARB_vertex_program", wine_glGetProgramEnvParameterfvARB },
18611   { "glGetProgramInfoLog", "GL_VERSION_2_0", wine_glGetProgramInfoLog },
18612   { "glGetProgramLocalParameterIivNV", "GL_NV_gpu_program4", wine_glGetProgramLocalParameterIivNV },
18613   { "glGetProgramLocalParameterIuivNV", "GL_NV_gpu_program4", wine_glGetProgramLocalParameterIuivNV },
18614   { "glGetProgramLocalParameterdvARB", "GL_ARB_vertex_program", wine_glGetProgramLocalParameterdvARB },
18615   { "glGetProgramLocalParameterfvARB", "GL_ARB_vertex_program", wine_glGetProgramLocalParameterfvARB },
18616   { "glGetProgramNamedParameterdvNV", "GL_NV_fragment_program", wine_glGetProgramNamedParameterdvNV },
18617   { "glGetProgramNamedParameterfvNV", "GL_NV_fragment_program", wine_glGetProgramNamedParameterfvNV },
18618   { "glGetProgramParameterdvNV", "GL_NV_vertex_program", wine_glGetProgramParameterdvNV },
18619   { "glGetProgramParameterfvNV", "GL_NV_vertex_program", wine_glGetProgramParameterfvNV },
18620   { "glGetProgramPipelineInfoLog", "GL_ARB_separate_shader_objects", wine_glGetProgramPipelineInfoLog },
18621   { "glGetProgramPipelineiv", "GL_ARB_separate_shader_objects", wine_glGetProgramPipelineiv },
18622   { "glGetProgramStageiv", "GL_ARB_shader_subroutine", wine_glGetProgramStageiv },
18623   { "glGetProgramStringARB", "GL_ARB_vertex_program", wine_glGetProgramStringARB },
18624   { "glGetProgramStringNV", "GL_NV_vertex_program", wine_glGetProgramStringNV },
18625   { "glGetProgramSubroutineParameteruivNV", "GL_NV_gpu_program5", wine_glGetProgramSubroutineParameteruivNV },
18626   { "glGetProgramiv", "GL_VERSION_2_0", wine_glGetProgramiv },
18627   { "glGetProgramivARB", "GL_ARB_vertex_program", wine_glGetProgramivARB },
18628   { "glGetProgramivNV", "GL_NV_vertex_program", wine_glGetProgramivNV },
18629   { "glGetQueryIndexediv", "GL_ARB_transform_feedback3", wine_glGetQueryIndexediv },
18630   { "glGetQueryObjecti64v", "GL_ARB_timer_query", wine_glGetQueryObjecti64v },
18631   { "glGetQueryObjecti64vEXT", "GL_EXT_timer_query", wine_glGetQueryObjecti64vEXT },
18632   { "glGetQueryObjectiv", "GL_VERSION_1_5", wine_glGetQueryObjectiv },
18633   { "glGetQueryObjectivARB", "GL_ARB_occlusion_query", wine_glGetQueryObjectivARB },
18634   { "glGetQueryObjectui64v", "GL_ARB_timer_query", wine_glGetQueryObjectui64v },
18635   { "glGetQueryObjectui64vEXT", "GL_EXT_timer_query", wine_glGetQueryObjectui64vEXT },
18636   { "glGetQueryObjectuiv", "GL_VERSION_1_5", wine_glGetQueryObjectuiv },
18637   { "glGetQueryObjectuivARB", "GL_ARB_occlusion_query", wine_glGetQueryObjectuivARB },
18638   { "glGetQueryiv", "GL_VERSION_1_5", wine_glGetQueryiv },
18639   { "glGetQueryivARB", "GL_ARB_occlusion_query", wine_glGetQueryivARB },
18640   { "glGetRenderbufferParameteriv", "GL_ARB_framebuffer_object", wine_glGetRenderbufferParameteriv },
18641   { "glGetRenderbufferParameterivEXT", "GL_EXT_framebuffer_object", wine_glGetRenderbufferParameterivEXT },
18642   { "glGetSamplerParameterIiv", "GL_ARB_sampler_objects", wine_glGetSamplerParameterIiv },
18643   { "glGetSamplerParameterIuiv", "GL_ARB_sampler_objects", wine_glGetSamplerParameterIuiv },
18644   { "glGetSamplerParameterfv", "GL_ARB_sampler_objects", wine_glGetSamplerParameterfv },
18645   { "glGetSamplerParameteriv", "GL_ARB_sampler_objects", wine_glGetSamplerParameteriv },
18646   { "glGetSeparableFilter", "GL_VERSION_1_2_DEPRECATED", wine_glGetSeparableFilter },
18647   { "glGetSeparableFilterEXT", "GL_EXT_convolution", wine_glGetSeparableFilterEXT },
18648   { "glGetShaderInfoLog", "GL_VERSION_2_0", wine_glGetShaderInfoLog },
18649   { "glGetShaderPrecisionFormat", "GL_ARB_ES2_compatibility", wine_glGetShaderPrecisionFormat },
18650   { "glGetShaderSource", "GL_VERSION_2_0", wine_glGetShaderSource },
18651   { "glGetShaderSourceARB", "GL_ARB_shader_objects", wine_glGetShaderSourceARB },
18652   { "glGetShaderiv", "GL_VERSION_2_0", wine_glGetShaderiv },
18653   { "glGetSharpenTexFuncSGIS", "GL_SGIS_sharpen_texture", wine_glGetSharpenTexFuncSGIS },
18654   { "glGetStringi", "GL_VERSION_3_0", wine_glGetStringi },
18655   { "glGetSubroutineIndex", "GL_ARB_shader_subroutine", wine_glGetSubroutineIndex },
18656   { "glGetSubroutineUniformLocation", "GL_ARB_shader_subroutine", wine_glGetSubroutineUniformLocation },
18657   { "glGetSynciv", "GL_ARB_sync", wine_glGetSynciv },
18658   { "glGetTexBumpParameterfvATI", "GL_ATI_envmap_bumpmap", wine_glGetTexBumpParameterfvATI },
18659   { "glGetTexBumpParameterivATI", "GL_ATI_envmap_bumpmap", wine_glGetTexBumpParameterivATI },
18660   { "glGetTexFilterFuncSGIS", "GL_SGIS_texture_filter4", wine_glGetTexFilterFuncSGIS },
18661   { "glGetTexParameterIiv", "GL_VERSION_3_0", wine_glGetTexParameterIiv },
18662   { "glGetTexParameterIivEXT", "GL_EXT_texture_integer", wine_glGetTexParameterIivEXT },
18663   { "glGetTexParameterIuiv", "GL_VERSION_3_0", wine_glGetTexParameterIuiv },
18664   { "glGetTexParameterIuivEXT", "GL_EXT_texture_integer", wine_glGetTexParameterIuivEXT },
18665   { "glGetTexParameterPointervAPPLE", "GL_APPLE_texture_range", wine_glGetTexParameterPointervAPPLE },
18666   { "glGetTextureImageEXT", "GL_EXT_direct_state_access", wine_glGetTextureImageEXT },
18667   { "glGetTextureLevelParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetTextureLevelParameterfvEXT },
18668   { "glGetTextureLevelParameterivEXT", "GL_EXT_direct_state_access", wine_glGetTextureLevelParameterivEXT },
18669   { "glGetTextureParameterIivEXT", "GL_EXT_direct_state_access", wine_glGetTextureParameterIivEXT },
18670   { "glGetTextureParameterIuivEXT", "GL_EXT_direct_state_access", wine_glGetTextureParameterIuivEXT },
18671   { "glGetTextureParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetTextureParameterfvEXT },
18672   { "glGetTextureParameterivEXT", "GL_EXT_direct_state_access", wine_glGetTextureParameterivEXT },
18673   { "glGetTrackMatrixivNV", "GL_NV_vertex_program", wine_glGetTrackMatrixivNV },
18674   { "glGetTransformFeedbackVarying", "GL_VERSION_3_0", wine_glGetTransformFeedbackVarying },
18675   { "glGetTransformFeedbackVaryingEXT", "GL_EXT_transform_feedback", wine_glGetTransformFeedbackVaryingEXT },
18676   { "glGetTransformFeedbackVaryingNV", "GL_NV_transform_feedback", wine_glGetTransformFeedbackVaryingNV },
18677   { "glGetUniformBlockIndex", "GL_ARB_uniform_buffer_object", wine_glGetUniformBlockIndex },
18678   { "glGetUniformBufferSizeEXT", "GL_EXT_bindable_uniform", wine_glGetUniformBufferSizeEXT },
18679   { "glGetUniformIndices", "GL_ARB_uniform_buffer_object", wine_glGetUniformIndices },
18680   { "glGetUniformLocation", "GL_VERSION_2_0", wine_glGetUniformLocation },
18681   { "glGetUniformLocationARB", "GL_ARB_shader_objects", wine_glGetUniformLocationARB },
18682   { "glGetUniformOffsetEXT", "GL_EXT_bindable_uniform", wine_glGetUniformOffsetEXT },
18683   { "glGetUniformSubroutineuiv", "GL_ARB_shader_subroutine", wine_glGetUniformSubroutineuiv },
18684   { "glGetUniformdv", "GL_ARB_gpu_shader_fp64", wine_glGetUniformdv },
18685   { "glGetUniformfv", "GL_VERSION_2_0", wine_glGetUniformfv },
18686   { "glGetUniformfvARB", "GL_ARB_shader_objects", wine_glGetUniformfvARB },
18687   { "glGetUniformi64vNV", "GL_NV_gpu_shader5", wine_glGetUniformi64vNV },
18688   { "glGetUniformiv", "GL_VERSION_2_0", wine_glGetUniformiv },
18689   { "glGetUniformivARB", "GL_ARB_shader_objects", wine_glGetUniformivARB },
18690   { "glGetUniformui64vNV", "GL_NV_shader_buffer_load", wine_glGetUniformui64vNV },
18691   { "glGetUniformuiv", "GL_VERSION_3_0", wine_glGetUniformuiv },
18692   { "glGetUniformuivEXT", "GL_EXT_gpu_shader4", wine_glGetUniformuivEXT },
18693   { "glGetVariantArrayObjectfvATI", "GL_ATI_vertex_array_object", wine_glGetVariantArrayObjectfvATI },
18694   { "glGetVariantArrayObjectivATI", "GL_ATI_vertex_array_object", wine_glGetVariantArrayObjectivATI },
18695   { "glGetVariantBooleanvEXT", "GL_EXT_vertex_shader", wine_glGetVariantBooleanvEXT },
18696   { "glGetVariantFloatvEXT", "GL_EXT_vertex_shader", wine_glGetVariantFloatvEXT },
18697   { "glGetVariantIntegervEXT", "GL_EXT_vertex_shader", wine_glGetVariantIntegervEXT },
18698   { "glGetVariantPointervEXT", "GL_EXT_vertex_shader", wine_glGetVariantPointervEXT },
18699   { "glGetVaryingLocationNV", "GL_NV_transform_feedback", wine_glGetVaryingLocationNV },
18700   { "glGetVertexAttribArrayObjectfvATI", "GL_ATI_vertex_attrib_array_object", wine_glGetVertexAttribArrayObjectfvATI },
18701   { "glGetVertexAttribArrayObjectivATI", "GL_ATI_vertex_attrib_array_object", wine_glGetVertexAttribArrayObjectivATI },
18702   { "glGetVertexAttribIiv", "GL_VERSION_3_0", wine_glGetVertexAttribIiv },
18703   { "glGetVertexAttribIivEXT", "GL_NV_vertex_program4", wine_glGetVertexAttribIivEXT },
18704   { "glGetVertexAttribIuiv", "GL_VERSION_3_0", wine_glGetVertexAttribIuiv },
18705   { "glGetVertexAttribIuivEXT", "GL_NV_vertex_program4", wine_glGetVertexAttribIuivEXT },
18706   { "glGetVertexAttribLdv", "GL_ARB_vertex_attrib_64bit", wine_glGetVertexAttribLdv },
18707   { "glGetVertexAttribLdvEXT", "GL_EXT_vertex_attrib_64bit", wine_glGetVertexAttribLdvEXT },
18708   { "glGetVertexAttribLi64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glGetVertexAttribLi64vNV },
18709   { "glGetVertexAttribLui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glGetVertexAttribLui64vNV },
18710   { "glGetVertexAttribPointerv", "GL_VERSION_2_0", wine_glGetVertexAttribPointerv },
18711   { "glGetVertexAttribPointervARB", "GL_ARB_vertex_program", wine_glGetVertexAttribPointervARB },
18712   { "glGetVertexAttribPointervNV", "GL_NV_vertex_program", wine_glGetVertexAttribPointervNV },
18713   { "glGetVertexAttribdv", "GL_VERSION_2_0", wine_glGetVertexAttribdv },
18714   { "glGetVertexAttribdvARB", "GL_ARB_vertex_program", wine_glGetVertexAttribdvARB },
18715   { "glGetVertexAttribdvNV", "GL_NV_vertex_program", wine_glGetVertexAttribdvNV },
18716   { "glGetVertexAttribfv", "GL_VERSION_2_0", wine_glGetVertexAttribfv },
18717   { "glGetVertexAttribfvARB", "GL_ARB_vertex_program", wine_glGetVertexAttribfvARB },
18718   { "glGetVertexAttribfvNV", "GL_NV_vertex_program", wine_glGetVertexAttribfvNV },
18719   { "glGetVertexAttribiv", "GL_VERSION_2_0", wine_glGetVertexAttribiv },
18720   { "glGetVertexAttribivARB", "GL_ARB_vertex_program", wine_glGetVertexAttribivARB },
18721   { "glGetVertexAttribivNV", "GL_NV_vertex_program", wine_glGetVertexAttribivNV },
18722   { "glGetVideoCaptureStreamdvNV", "GL_NV_video_capture", wine_glGetVideoCaptureStreamdvNV },
18723   { "glGetVideoCaptureStreamfvNV", "GL_NV_video_capture", wine_glGetVideoCaptureStreamfvNV },
18724   { "glGetVideoCaptureStreamivNV", "GL_NV_video_capture", wine_glGetVideoCaptureStreamivNV },
18725   { "glGetVideoCaptureivNV", "GL_NV_video_capture", wine_glGetVideoCaptureivNV },
18726   { "glGetVideoi64vNV", "GL_NV_present_video", wine_glGetVideoi64vNV },
18727   { "glGetVideoivNV", "GL_NV_present_video", wine_glGetVideoivNV },
18728   { "glGetVideoui64vNV", "GL_NV_present_video", wine_glGetVideoui64vNV },
18729   { "glGetVideouivNV", "GL_NV_present_video", wine_glGetVideouivNV },
18730   { "glGetnColorTableARB", "GL_ARB_robustness", wine_glGetnColorTableARB },
18731   { "glGetnCompressedTexImageARB", "GL_ARB_robustness", wine_glGetnCompressedTexImageARB },
18732   { "glGetnConvolutionFilterARB", "GL_ARB_robustness", wine_glGetnConvolutionFilterARB },
18733   { "glGetnHistogramARB", "GL_ARB_robustness", wine_glGetnHistogramARB },
18734   { "glGetnMapdvARB", "GL_ARB_robustness", wine_glGetnMapdvARB },
18735   { "glGetnMapfvARB", "GL_ARB_robustness", wine_glGetnMapfvARB },
18736   { "glGetnMapivARB", "GL_ARB_robustness", wine_glGetnMapivARB },
18737   { "glGetnMinmaxARB", "GL_ARB_robustness", wine_glGetnMinmaxARB },
18738   { "glGetnPixelMapfvARB", "GL_ARB_robustness", wine_glGetnPixelMapfvARB },
18739   { "glGetnPixelMapuivARB", "GL_ARB_robustness", wine_glGetnPixelMapuivARB },
18740   { "glGetnPixelMapusvARB", "GL_ARB_robustness", wine_glGetnPixelMapusvARB },
18741   { "glGetnPolygonStippleARB", "GL_ARB_robustness", wine_glGetnPolygonStippleARB },
18742   { "glGetnSeparableFilterARB", "GL_ARB_robustness", wine_glGetnSeparableFilterARB },
18743   { "glGetnTexImageARB", "GL_ARB_robustness", wine_glGetnTexImageARB },
18744   { "glGetnUniformdvARB", "GL_ARB_robustness", wine_glGetnUniformdvARB },
18745   { "glGetnUniformfvARB", "GL_ARB_robustness", wine_glGetnUniformfvARB },
18746   { "glGetnUniformivARB", "GL_ARB_robustness", wine_glGetnUniformivARB },
18747   { "glGetnUniformuivARB", "GL_ARB_robustness", wine_glGetnUniformuivARB },
18748   { "glGlobalAlphaFactorbSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorbSUN },
18749   { "glGlobalAlphaFactordSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactordSUN },
18750   { "glGlobalAlphaFactorfSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorfSUN },
18751   { "glGlobalAlphaFactoriSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactoriSUN },
18752   { "glGlobalAlphaFactorsSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorsSUN },
18753   { "glGlobalAlphaFactorubSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorubSUN },
18754   { "glGlobalAlphaFactoruiSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactoruiSUN },
18755   { "glGlobalAlphaFactorusSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorusSUN },
18756   { "glHintPGI", "GL_PGI_misc_hints", wine_glHintPGI },
18757   { "glHistogram", "GL_VERSION_1_2_DEPRECATED", wine_glHistogram },
18758   { "glHistogramEXT", "GL_EXT_histogram", wine_glHistogramEXT },
18759   { "glIglooInterfaceSGIX", "GL_SGIX_igloo_interface", wine_glIglooInterfaceSGIX },
18760   { "glImageTransformParameterfHP", "GL_HP_image_transform", wine_glImageTransformParameterfHP },
18761   { "glImageTransformParameterfvHP", "GL_HP_image_transform", wine_glImageTransformParameterfvHP },
18762   { "glImageTransformParameteriHP", "GL_HP_image_transform", wine_glImageTransformParameteriHP },
18763   { "glImageTransformParameterivHP", "GL_HP_image_transform", wine_glImageTransformParameterivHP },
18764   { "glIndexFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glIndexFormatNV },
18765   { "glIndexFuncEXT", "GL_EXT_index_func", wine_glIndexFuncEXT },
18766   { "glIndexMaterialEXT", "GL_EXT_index_material", wine_glIndexMaterialEXT },
18767   { "glIndexPointerEXT", "GL_EXT_vertex_array", wine_glIndexPointerEXT },
18768   { "glIndexPointerListIBM", "GL_IBM_vertex_array_lists", wine_glIndexPointerListIBM },
18769   { "glInsertComponentEXT", "GL_EXT_vertex_shader", wine_glInsertComponentEXT },
18770   { "glInstrumentsBufferSGIX", "GL_SGIX_instruments", wine_glInstrumentsBufferSGIX },
18771   { "glIsAsyncMarkerSGIX", "GL_SGIX_async", wine_glIsAsyncMarkerSGIX },
18772   { "glIsBuffer", "GL_VERSION_1_5", wine_glIsBuffer },
18773   { "glIsBufferARB", "GL_ARB_vertex_buffer_object", wine_glIsBufferARB },
18774   { "glIsBufferResidentNV", "GL_NV_shader_buffer_load", wine_glIsBufferResidentNV },
18775   { "glIsEnabledIndexedEXT", "GL_EXT_draw_buffers2", wine_glIsEnabledIndexedEXT },
18776   { "glIsEnabledi", "GL_VERSION_3_0", wine_glIsEnabledi },
18777   { "glIsFenceAPPLE", "GL_APPLE_fence", wine_glIsFenceAPPLE },
18778   { "glIsFenceNV", "GL_NV_fence", wine_glIsFenceNV },
18779   { "glIsFramebuffer", "GL_ARB_framebuffer_object", wine_glIsFramebuffer },
18780   { "glIsFramebufferEXT", "GL_EXT_framebuffer_object", wine_glIsFramebufferEXT },
18781   { "glIsNameAMD", "GL_AMD_name_gen_delete", wine_glIsNameAMD },
18782   { "glIsNamedBufferResidentNV", "GL_NV_shader_buffer_load", wine_glIsNamedBufferResidentNV },
18783   { "glIsNamedStringARB", "GL_ARB_shading_language_include", wine_glIsNamedStringARB },
18784   { "glIsObjectBufferATI", "GL_ATI_vertex_array_object", wine_glIsObjectBufferATI },
18785   { "glIsOcclusionQueryNV", "GL_NV_occlusion_query", wine_glIsOcclusionQueryNV },
18786   { "glIsProgram", "GL_VERSION_2_0", wine_glIsProgram },
18787   { "glIsProgramARB", "GL_ARB_vertex_program", wine_glIsProgramARB },
18788   { "glIsProgramNV", "GL_NV_vertex_program", wine_glIsProgramNV },
18789   { "glIsProgramPipeline", "GL_ARB_separate_shader_objects", wine_glIsProgramPipeline },
18790   { "glIsQuery", "GL_VERSION_1_5", wine_glIsQuery },
18791   { "glIsQueryARB", "GL_ARB_occlusion_query", wine_glIsQueryARB },
18792   { "glIsRenderbuffer", "GL_ARB_framebuffer_object", wine_glIsRenderbuffer },
18793   { "glIsRenderbufferEXT", "GL_EXT_framebuffer_object", wine_glIsRenderbufferEXT },
18794   { "glIsSampler", "GL_ARB_sampler_objects", wine_glIsSampler },
18795   { "glIsShader", "GL_VERSION_2_0", wine_glIsShader },
18796   { "glIsSync", "GL_ARB_sync", wine_glIsSync },
18797   { "glIsTextureEXT", "GL_EXT_texture_object", wine_glIsTextureEXT },
18798   { "glIsTransformFeedback", "GL_ARB_transform_feedback2", wine_glIsTransformFeedback },
18799   { "glIsTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glIsTransformFeedbackNV },
18800   { "glIsVariantEnabledEXT", "GL_EXT_vertex_shader", wine_glIsVariantEnabledEXT },
18801   { "glIsVertexArray", "GL_ARB_vertex_array_object", wine_glIsVertexArray },
18802   { "glIsVertexArrayAPPLE", "GL_APPLE_vertex_array_object", wine_glIsVertexArrayAPPLE },
18803   { "glIsVertexAttribEnabledAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glIsVertexAttribEnabledAPPLE },
18804   { "glLightEnviSGIX", "GL_SGIX_fragment_lighting", wine_glLightEnviSGIX },
18805   { "glLinkProgram", "GL_VERSION_2_0", wine_glLinkProgram },
18806   { "glLinkProgramARB", "GL_ARB_shader_objects", wine_glLinkProgramARB },
18807   { "glListParameterfSGIX", "GL_SGIX_list_priority", wine_glListParameterfSGIX },
18808   { "glListParameterfvSGIX", "GL_SGIX_list_priority", wine_glListParameterfvSGIX },
18809   { "glListParameteriSGIX", "GL_SGIX_list_priority", wine_glListParameteriSGIX },
18810   { "glListParameterivSGIX", "GL_SGIX_list_priority", wine_glListParameterivSGIX },
18811   { "glLoadIdentityDeformationMapSGIX", "GL_SGIX_polynomial_ffd", wine_glLoadIdentityDeformationMapSGIX },
18812   { "glLoadProgramNV", "GL_NV_vertex_program", wine_glLoadProgramNV },
18813   { "glLoadTransposeMatrixd", "GL_VERSION_1_3_DEPRECATED", wine_glLoadTransposeMatrixd },
18814   { "glLoadTransposeMatrixdARB", "GL_ARB_transpose_matrix", wine_glLoadTransposeMatrixdARB },
18815   { "glLoadTransposeMatrixf", "GL_VERSION_1_3_DEPRECATED", wine_glLoadTransposeMatrixf },
18816   { "glLoadTransposeMatrixfARB", "GL_ARB_transpose_matrix", wine_glLoadTransposeMatrixfARB },
18817   { "glLockArraysEXT", "GL_EXT_compiled_vertex_array", wine_glLockArraysEXT },
18818   { "glMTexCoord2fSGIS", "GL_SGIS_multitexture", wine_glMTexCoord2fSGIS },
18819   { "glMTexCoord2fvSGIS", "GL_SGIS_multitexture", wine_glMTexCoord2fvSGIS },
18820   { "glMakeBufferNonResidentNV", "GL_NV_shader_buffer_load", wine_glMakeBufferNonResidentNV },
18821   { "glMakeBufferResidentNV", "GL_NV_shader_buffer_load", wine_glMakeBufferResidentNV },
18822   { "glMakeNamedBufferNonResidentNV", "GL_NV_shader_buffer_load", wine_glMakeNamedBufferNonResidentNV },
18823   { "glMakeNamedBufferResidentNV", "GL_NV_shader_buffer_load", wine_glMakeNamedBufferResidentNV },
18824   { "glMapBuffer", "GL_VERSION_1_5", wine_glMapBuffer },
18825   { "glMapBufferARB", "GL_ARB_vertex_buffer_object", wine_glMapBufferARB },
18826   { "glMapBufferRange", "GL_ARB_map_buffer_range", wine_glMapBufferRange },
18827   { "glMapControlPointsNV", "GL_NV_evaluators", wine_glMapControlPointsNV },
18828   { "glMapNamedBufferEXT", "GL_EXT_direct_state_access", wine_glMapNamedBufferEXT },
18829   { "glMapNamedBufferRangeEXT", "GL_EXT_direct_state_access", wine_glMapNamedBufferRangeEXT },
18830   { "glMapObjectBufferATI", "GL_ATI_map_object_buffer", wine_glMapObjectBufferATI },
18831   { "glMapParameterfvNV", "GL_NV_evaluators", wine_glMapParameterfvNV },
18832   { "glMapParameterivNV", "GL_NV_evaluators", wine_glMapParameterivNV },
18833   { "glMapVertexAttrib1dAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glMapVertexAttrib1dAPPLE },
18834   { "glMapVertexAttrib1fAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glMapVertexAttrib1fAPPLE },
18835   { "glMapVertexAttrib2dAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glMapVertexAttrib2dAPPLE },
18836   { "glMapVertexAttrib2fAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glMapVertexAttrib2fAPPLE },
18837   { "glMatrixFrustumEXT", "GL_EXT_direct_state_access", wine_glMatrixFrustumEXT },
18838   { "glMatrixIndexPointerARB", "GL_ARB_matrix_palette", wine_glMatrixIndexPointerARB },
18839   { "glMatrixIndexubvARB", "GL_ARB_matrix_palette", wine_glMatrixIndexubvARB },
18840   { "glMatrixIndexuivARB", "GL_ARB_matrix_palette", wine_glMatrixIndexuivARB },
18841   { "glMatrixIndexusvARB", "GL_ARB_matrix_palette", wine_glMatrixIndexusvARB },
18842   { "glMatrixLoadIdentityEXT", "GL_EXT_direct_state_access", wine_glMatrixLoadIdentityEXT },
18843   { "glMatrixLoadTransposedEXT", "GL_EXT_direct_state_access", wine_glMatrixLoadTransposedEXT },
18844   { "glMatrixLoadTransposefEXT", "GL_EXT_direct_state_access", wine_glMatrixLoadTransposefEXT },
18845   { "glMatrixLoaddEXT", "GL_EXT_direct_state_access", wine_glMatrixLoaddEXT },
18846   { "glMatrixLoadfEXT", "GL_EXT_direct_state_access", wine_glMatrixLoadfEXT },
18847   { "glMatrixMultTransposedEXT", "GL_EXT_direct_state_access", wine_glMatrixMultTransposedEXT },
18848   { "glMatrixMultTransposefEXT", "GL_EXT_direct_state_access", wine_glMatrixMultTransposefEXT },
18849   { "glMatrixMultdEXT", "GL_EXT_direct_state_access", wine_glMatrixMultdEXT },
18850   { "glMatrixMultfEXT", "GL_EXT_direct_state_access", wine_glMatrixMultfEXT },
18851   { "glMatrixOrthoEXT", "GL_EXT_direct_state_access", wine_glMatrixOrthoEXT },
18852   { "glMatrixPopEXT", "GL_EXT_direct_state_access", wine_glMatrixPopEXT },
18853   { "glMatrixPushEXT", "GL_EXT_direct_state_access", wine_glMatrixPushEXT },
18854   { "glMatrixRotatedEXT", "GL_EXT_direct_state_access", wine_glMatrixRotatedEXT },
18855   { "glMatrixRotatefEXT", "GL_EXT_direct_state_access", wine_glMatrixRotatefEXT },
18856   { "glMatrixScaledEXT", "GL_EXT_direct_state_access", wine_glMatrixScaledEXT },
18857   { "glMatrixScalefEXT", "GL_EXT_direct_state_access", wine_glMatrixScalefEXT },
18858   { "glMatrixTranslatedEXT", "GL_EXT_direct_state_access", wine_glMatrixTranslatedEXT },
18859   { "glMatrixTranslatefEXT", "GL_EXT_direct_state_access", wine_glMatrixTranslatefEXT },
18860   { "glMemoryBarrierEXT", "GL_EXT_shader_image_load_store", wine_glMemoryBarrierEXT },
18861   { "glMinSampleShading", "GL_VERSION_4_0", wine_glMinSampleShading },
18862   { "glMinSampleShadingARB", "GL_ARB_sample_shading", wine_glMinSampleShadingARB },
18863   { "glMinmax", "GL_VERSION_1_2_DEPRECATED", wine_glMinmax },
18864   { "glMinmaxEXT", "GL_EXT_histogram", wine_glMinmaxEXT },
18865   { "glMultTransposeMatrixd", "GL_VERSION_1_3_DEPRECATED", wine_glMultTransposeMatrixd },
18866   { "glMultTransposeMatrixdARB", "GL_ARB_transpose_matrix", wine_glMultTransposeMatrixdARB },
18867   { "glMultTransposeMatrixf", "GL_VERSION_1_3_DEPRECATED", wine_glMultTransposeMatrixf },
18868   { "glMultTransposeMatrixfARB", "GL_ARB_transpose_matrix", wine_glMultTransposeMatrixfARB },
18869   { "glMultiDrawArrays", "GL_VERSION_1_4", wine_glMultiDrawArrays },
18870   { "glMultiDrawArraysEXT", "GL_EXT_multi_draw_arrays", wine_glMultiDrawArraysEXT },
18871   { "glMultiDrawElementArrayAPPLE", "GL_APPLE_element_array", wine_glMultiDrawElementArrayAPPLE },
18872   { "glMultiDrawElements", "GL_VERSION_1_4", wine_glMultiDrawElements },
18873   { "glMultiDrawElementsBaseVertex", "GL_ARB_draw_elements_base_vertex", wine_glMultiDrawElementsBaseVertex },
18874   { "glMultiDrawElementsEXT", "GL_EXT_multi_draw_arrays", wine_glMultiDrawElementsEXT },
18875   { "glMultiDrawRangeElementArrayAPPLE", "GL_APPLE_element_array", wine_glMultiDrawRangeElementArrayAPPLE },
18876   { "glMultiModeDrawArraysIBM", "GL_IBM_multimode_draw_arrays", wine_glMultiModeDrawArraysIBM },
18877   { "glMultiModeDrawElementsIBM", "GL_IBM_multimode_draw_arrays", wine_glMultiModeDrawElementsIBM },
18878   { "glMultiTexBufferEXT", "GL_EXT_direct_state_access", wine_glMultiTexBufferEXT },
18879   { "glMultiTexCoord1d", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1d },
18880   { "glMultiTexCoord1dARB", "GL_ARB_multitexture", wine_glMultiTexCoord1dARB },
18881   { "glMultiTexCoord1dSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1dSGIS },
18882   { "glMultiTexCoord1dv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1dv },
18883   { "glMultiTexCoord1dvARB", "GL_ARB_multitexture", wine_glMultiTexCoord1dvARB },
18884   { "glMultiTexCoord1dvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1dvSGIS },
18885   { "glMultiTexCoord1f", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1f },
18886   { "glMultiTexCoord1fARB", "GL_ARB_multitexture", wine_glMultiTexCoord1fARB },
18887   { "glMultiTexCoord1fSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1fSGIS },
18888   { "glMultiTexCoord1fv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1fv },
18889   { "glMultiTexCoord1fvARB", "GL_ARB_multitexture", wine_glMultiTexCoord1fvARB },
18890   { "glMultiTexCoord1fvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1fvSGIS },
18891   { "glMultiTexCoord1hNV", "GL_NV_half_float", wine_glMultiTexCoord1hNV },
18892   { "glMultiTexCoord1hvNV", "GL_NV_half_float", wine_glMultiTexCoord1hvNV },
18893   { "glMultiTexCoord1i", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1i },
18894   { "glMultiTexCoord1iARB", "GL_ARB_multitexture", wine_glMultiTexCoord1iARB },
18895   { "glMultiTexCoord1iSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1iSGIS },
18896   { "glMultiTexCoord1iv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1iv },
18897   { "glMultiTexCoord1ivARB", "GL_ARB_multitexture", wine_glMultiTexCoord1ivARB },
18898   { "glMultiTexCoord1ivSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1ivSGIS },
18899   { "glMultiTexCoord1s", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1s },
18900   { "glMultiTexCoord1sARB", "GL_ARB_multitexture", wine_glMultiTexCoord1sARB },
18901   { "glMultiTexCoord1sSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1sSGIS },
18902   { "glMultiTexCoord1sv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1sv },
18903   { "glMultiTexCoord1svARB", "GL_ARB_multitexture", wine_glMultiTexCoord1svARB },
18904   { "glMultiTexCoord1svSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1svSGIS },
18905   { "glMultiTexCoord2d", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2d },
18906   { "glMultiTexCoord2dARB", "GL_ARB_multitexture", wine_glMultiTexCoord2dARB },
18907   { "glMultiTexCoord2dSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2dSGIS },
18908   { "glMultiTexCoord2dv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2dv },
18909   { "glMultiTexCoord2dvARB", "GL_ARB_multitexture", wine_glMultiTexCoord2dvARB },
18910   { "glMultiTexCoord2dvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2dvSGIS },
18911   { "glMultiTexCoord2f", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2f },
18912   { "glMultiTexCoord2fARB", "GL_ARB_multitexture", wine_glMultiTexCoord2fARB },
18913   { "glMultiTexCoord2fSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2fSGIS },
18914   { "glMultiTexCoord2fv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2fv },
18915   { "glMultiTexCoord2fvARB", "GL_ARB_multitexture", wine_glMultiTexCoord2fvARB },
18916   { "glMultiTexCoord2fvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2fvSGIS },
18917   { "glMultiTexCoord2hNV", "GL_NV_half_float", wine_glMultiTexCoord2hNV },
18918   { "glMultiTexCoord2hvNV", "GL_NV_half_float", wine_glMultiTexCoord2hvNV },
18919   { "glMultiTexCoord2i", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2i },
18920   { "glMultiTexCoord2iARB", "GL_ARB_multitexture", wine_glMultiTexCoord2iARB },
18921   { "glMultiTexCoord2iSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2iSGIS },
18922   { "glMultiTexCoord2iv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2iv },
18923   { "glMultiTexCoord2ivARB", "GL_ARB_multitexture", wine_glMultiTexCoord2ivARB },
18924   { "glMultiTexCoord2ivSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2ivSGIS },
18925   { "glMultiTexCoord2s", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2s },
18926   { "glMultiTexCoord2sARB", "GL_ARB_multitexture", wine_glMultiTexCoord2sARB },
18927   { "glMultiTexCoord2sSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2sSGIS },
18928   { "glMultiTexCoord2sv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2sv },
18929   { "glMultiTexCoord2svARB", "GL_ARB_multitexture", wine_glMultiTexCoord2svARB },
18930   { "glMultiTexCoord2svSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2svSGIS },
18931   { "glMultiTexCoord3d", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3d },
18932   { "glMultiTexCoord3dARB", "GL_ARB_multitexture", wine_glMultiTexCoord3dARB },
18933   { "glMultiTexCoord3dSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3dSGIS },
18934   { "glMultiTexCoord3dv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3dv },
18935   { "glMultiTexCoord3dvARB", "GL_ARB_multitexture", wine_glMultiTexCoord3dvARB },
18936   { "glMultiTexCoord3dvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3dvSGIS },
18937   { "glMultiTexCoord3f", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3f },
18938   { "glMultiTexCoord3fARB", "GL_ARB_multitexture", wine_glMultiTexCoord3fARB },
18939   { "glMultiTexCoord3fSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3fSGIS },
18940   { "glMultiTexCoord3fv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3fv },
18941   { "glMultiTexCoord3fvARB", "GL_ARB_multitexture", wine_glMultiTexCoord3fvARB },
18942   { "glMultiTexCoord3fvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3fvSGIS },
18943   { "glMultiTexCoord3hNV", "GL_NV_half_float", wine_glMultiTexCoord3hNV },
18944   { "glMultiTexCoord3hvNV", "GL_NV_half_float", wine_glMultiTexCoord3hvNV },
18945   { "glMultiTexCoord3i", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3i },
18946   { "glMultiTexCoord3iARB", "GL_ARB_multitexture", wine_glMultiTexCoord3iARB },
18947   { "glMultiTexCoord3iSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3iSGIS },
18948   { "glMultiTexCoord3iv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3iv },
18949   { "glMultiTexCoord3ivARB", "GL_ARB_multitexture", wine_glMultiTexCoord3ivARB },
18950   { "glMultiTexCoord3ivSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3ivSGIS },
18951   { "glMultiTexCoord3s", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3s },
18952   { "glMultiTexCoord3sARB", "GL_ARB_multitexture", wine_glMultiTexCoord3sARB },
18953   { "glMultiTexCoord3sSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3sSGIS },
18954   { "glMultiTexCoord3sv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3sv },
18955   { "glMultiTexCoord3svARB", "GL_ARB_multitexture", wine_glMultiTexCoord3svARB },
18956   { "glMultiTexCoord3svSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3svSGIS },
18957   { "glMultiTexCoord4d", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4d },
18958   { "glMultiTexCoord4dARB", "GL_ARB_multitexture", wine_glMultiTexCoord4dARB },
18959   { "glMultiTexCoord4dSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4dSGIS },
18960   { "glMultiTexCoord4dv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4dv },
18961   { "glMultiTexCoord4dvARB", "GL_ARB_multitexture", wine_glMultiTexCoord4dvARB },
18962   { "glMultiTexCoord4dvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4dvSGIS },
18963   { "glMultiTexCoord4f", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4f },
18964   { "glMultiTexCoord4fARB", "GL_ARB_multitexture", wine_glMultiTexCoord4fARB },
18965   { "glMultiTexCoord4fSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4fSGIS },
18966   { "glMultiTexCoord4fv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4fv },
18967   { "glMultiTexCoord4fvARB", "GL_ARB_multitexture", wine_glMultiTexCoord4fvARB },
18968   { "glMultiTexCoord4fvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4fvSGIS },
18969   { "glMultiTexCoord4hNV", "GL_NV_half_float", wine_glMultiTexCoord4hNV },
18970   { "glMultiTexCoord4hvNV", "GL_NV_half_float", wine_glMultiTexCoord4hvNV },
18971   { "glMultiTexCoord4i", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4i },
18972   { "glMultiTexCoord4iARB", "GL_ARB_multitexture", wine_glMultiTexCoord4iARB },
18973   { "glMultiTexCoord4iSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4iSGIS },
18974   { "glMultiTexCoord4iv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4iv },
18975   { "glMultiTexCoord4ivARB", "GL_ARB_multitexture", wine_glMultiTexCoord4ivARB },
18976   { "glMultiTexCoord4ivSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4ivSGIS },
18977   { "glMultiTexCoord4s", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4s },
18978   { "glMultiTexCoord4sARB", "GL_ARB_multitexture", wine_glMultiTexCoord4sARB },
18979   { "glMultiTexCoord4sSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4sSGIS },
18980   { "glMultiTexCoord4sv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4sv },
18981   { "glMultiTexCoord4svARB", "GL_ARB_multitexture", wine_glMultiTexCoord4svARB },
18982   { "glMultiTexCoord4svSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4svSGIS },
18983   { "glMultiTexCoordP1ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP1ui },
18984   { "glMultiTexCoordP1uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP1uiv },
18985   { "glMultiTexCoordP2ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP2ui },
18986   { "glMultiTexCoordP2uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP2uiv },
18987   { "glMultiTexCoordP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP3ui },
18988   { "glMultiTexCoordP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP3uiv },
18989   { "glMultiTexCoordP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP4ui },
18990   { "glMultiTexCoordP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP4uiv },
18991   { "glMultiTexCoordPointerEXT", "GL_EXT_direct_state_access", wine_glMultiTexCoordPointerEXT },
18992   { "glMultiTexCoordPointerSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoordPointerSGIS },
18993   { "glMultiTexEnvfEXT", "GL_EXT_direct_state_access", wine_glMultiTexEnvfEXT },
18994   { "glMultiTexEnvfvEXT", "GL_EXT_direct_state_access", wine_glMultiTexEnvfvEXT },
18995   { "glMultiTexEnviEXT", "GL_EXT_direct_state_access", wine_glMultiTexEnviEXT },
18996   { "glMultiTexEnvivEXT", "GL_EXT_direct_state_access", wine_glMultiTexEnvivEXT },
18997   { "glMultiTexGendEXT", "GL_EXT_direct_state_access", wine_glMultiTexGendEXT },
18998   { "glMultiTexGendvEXT", "GL_EXT_direct_state_access", wine_glMultiTexGendvEXT },
18999   { "glMultiTexGenfEXT", "GL_EXT_direct_state_access", wine_glMultiTexGenfEXT },
19000   { "glMultiTexGenfvEXT", "GL_EXT_direct_state_access", wine_glMultiTexGenfvEXT },
19001   { "glMultiTexGeniEXT", "GL_EXT_direct_state_access", wine_glMultiTexGeniEXT },
19002   { "glMultiTexGenivEXT", "GL_EXT_direct_state_access", wine_glMultiTexGenivEXT },
19003   { "glMultiTexImage1DEXT", "GL_EXT_direct_state_access", wine_glMultiTexImage1DEXT },
19004   { "glMultiTexImage2DEXT", "GL_EXT_direct_state_access", wine_glMultiTexImage2DEXT },
19005   { "glMultiTexImage3DEXT", "GL_EXT_direct_state_access", wine_glMultiTexImage3DEXT },
19006   { "glMultiTexParameterIivEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterIivEXT },
19007   { "glMultiTexParameterIuivEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterIuivEXT },
19008   { "glMultiTexParameterfEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterfEXT },
19009   { "glMultiTexParameterfvEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterfvEXT },
19010   { "glMultiTexParameteriEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameteriEXT },
19011   { "glMultiTexParameterivEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterivEXT },
19012   { "glMultiTexRenderbufferEXT", "GL_EXT_direct_state_access", wine_glMultiTexRenderbufferEXT },
19013   { "glMultiTexSubImage1DEXT", "GL_EXT_direct_state_access", wine_glMultiTexSubImage1DEXT },
19014   { "glMultiTexSubImage2DEXT", "GL_EXT_direct_state_access", wine_glMultiTexSubImage2DEXT },
19015   { "glMultiTexSubImage3DEXT", "GL_EXT_direct_state_access", wine_glMultiTexSubImage3DEXT },
19016   { "glNamedBufferDataEXT", "GL_EXT_direct_state_access", wine_glNamedBufferDataEXT },
19017   { "glNamedBufferSubDataEXT", "GL_EXT_direct_state_access", wine_glNamedBufferSubDataEXT },
19018   { "glNamedCopyBufferSubDataEXT", "GL_EXT_direct_state_access", wine_glNamedCopyBufferSubDataEXT },
19019   { "glNamedFramebufferRenderbufferEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferRenderbufferEXT },
19020   { "glNamedFramebufferTexture1DEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTexture1DEXT },
19021   { "glNamedFramebufferTexture2DEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTexture2DEXT },
19022   { "glNamedFramebufferTexture3DEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTexture3DEXT },
19023   { "glNamedFramebufferTextureEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTextureEXT },
19024   { "glNamedFramebufferTextureFaceEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTextureFaceEXT },
19025   { "glNamedFramebufferTextureLayerEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTextureLayerEXT },
19026   { "glNamedProgramLocalParameter4dEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameter4dEXT },
19027   { "glNamedProgramLocalParameter4dvEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameter4dvEXT },
19028   { "glNamedProgramLocalParameter4fEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameter4fEXT },
19029   { "glNamedProgramLocalParameter4fvEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameter4fvEXT },
19030   { "glNamedProgramLocalParameterI4iEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameterI4iEXT },
19031   { "glNamedProgramLocalParameterI4ivEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameterI4ivEXT },
19032   { "glNamedProgramLocalParameterI4uiEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameterI4uiEXT },
19033   { "glNamedProgramLocalParameterI4uivEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameterI4uivEXT },
19034   { "glNamedProgramLocalParameters4fvEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameters4fvEXT },
19035   { "glNamedProgramLocalParametersI4ivEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParametersI4ivEXT },
19036   { "glNamedProgramLocalParametersI4uivEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParametersI4uivEXT },
19037   { "glNamedProgramStringEXT", "GL_EXT_direct_state_access", wine_glNamedProgramStringEXT },
19038   { "glNamedRenderbufferStorageEXT", "GL_EXT_direct_state_access", wine_glNamedRenderbufferStorageEXT },
19039   { "glNamedRenderbufferStorageMultisampleCoverageEXT", "GL_EXT_direct_state_access", wine_glNamedRenderbufferStorageMultisampleCoverageEXT },
19040   { "glNamedRenderbufferStorageMultisampleEXT", "GL_EXT_direct_state_access", wine_glNamedRenderbufferStorageMultisampleEXT },
19041   { "glNamedStringARB", "GL_ARB_shading_language_include", wine_glNamedStringARB },
19042   { "glNewBufferRegion", "GL_KTX_buffer_region", wine_glNewBufferRegion },
19043   { "glNewObjectBufferATI", "GL_ATI_vertex_array_object", wine_glNewObjectBufferATI },
19044   { "glNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glNormal3fVertex3fSUN },
19045   { "glNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glNormal3fVertex3fvSUN },
19046   { "glNormal3hNV", "GL_NV_half_float", wine_glNormal3hNV },
19047   { "glNormal3hvNV", "GL_NV_half_float", wine_glNormal3hvNV },
19048   { "glNormalFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glNormalFormatNV },
19049   { "glNormalP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glNormalP3ui },
19050   { "glNormalP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glNormalP3uiv },
19051   { "glNormalPointerEXT", "GL_EXT_vertex_array", wine_glNormalPointerEXT },
19052   { "glNormalPointerListIBM", "GL_IBM_vertex_array_lists", wine_glNormalPointerListIBM },
19053   { "glNormalPointervINTEL", "GL_INTEL_parallel_arrays", wine_glNormalPointervINTEL },
19054   { "glNormalStream3bATI", "GL_ATI_vertex_streams", wine_glNormalStream3bATI },
19055   { "glNormalStream3bvATI", "GL_ATI_vertex_streams", wine_glNormalStream3bvATI },
19056   { "glNormalStream3dATI", "GL_ATI_vertex_streams", wine_glNormalStream3dATI },
19057   { "glNormalStream3dvATI", "GL_ATI_vertex_streams", wine_glNormalStream3dvATI },
19058   { "glNormalStream3fATI", "GL_ATI_vertex_streams", wine_glNormalStream3fATI },
19059   { "glNormalStream3fvATI", "GL_ATI_vertex_streams", wine_glNormalStream3fvATI },
19060   { "glNormalStream3iATI", "GL_ATI_vertex_streams", wine_glNormalStream3iATI },
19061   { "glNormalStream3ivATI", "GL_ATI_vertex_streams", wine_glNormalStream3ivATI },
19062   { "glNormalStream3sATI", "GL_ATI_vertex_streams", wine_glNormalStream3sATI },
19063   { "glNormalStream3svATI", "GL_ATI_vertex_streams", wine_glNormalStream3svATI },
19064   { "glObjectPurgeableAPPLE", "GL_APPLE_object_purgeable", wine_glObjectPurgeableAPPLE },
19065   { "glObjectUnpurgeableAPPLE", "GL_APPLE_object_purgeable", wine_glObjectUnpurgeableAPPLE },
19066   { "glPNTrianglesfATI", "GL_ATI_pn_triangles", wine_glPNTrianglesfATI },
19067   { "glPNTrianglesiATI", "GL_ATI_pn_triangles", wine_glPNTrianglesiATI },
19068   { "glPassTexCoordATI", "GL_ATI_fragment_shader", wine_glPassTexCoordATI },
19069   { "glPatchParameterfv", "GL_ARB_tessellation_shader", wine_glPatchParameterfv },
19070   { "glPatchParameteri", "GL_ARB_tessellation_shader", wine_glPatchParameteri },
19071   { "glPauseTransformFeedback", "GL_ARB_transform_feedback2", wine_glPauseTransformFeedback },
19072   { "glPauseTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glPauseTransformFeedbackNV },
19073   { "glPixelDataRangeNV", "GL_NV_pixel_data_range", wine_glPixelDataRangeNV },
19074   { "glPixelTexGenParameterfSGIS", "GL_SGIS_pixel_texture", wine_glPixelTexGenParameterfSGIS },
19075   { "glPixelTexGenParameterfvSGIS", "GL_SGIS_pixel_texture", wine_glPixelTexGenParameterfvSGIS },
19076   { "glPixelTexGenParameteriSGIS", "GL_SGIS_pixel_texture", wine_glPixelTexGenParameteriSGIS },
19077   { "glPixelTexGenParameterivSGIS", "GL_SGIS_pixel_texture", wine_glPixelTexGenParameterivSGIS },
19078   { "glPixelTexGenSGIX", "GL_SGIX_pixel_texture", wine_glPixelTexGenSGIX },
19079   { "glPixelTransformParameterfEXT", "GL_EXT_pixel_transform", wine_glPixelTransformParameterfEXT },
19080   { "glPixelTransformParameterfvEXT", "GL_EXT_pixel_transform", wine_glPixelTransformParameterfvEXT },
19081   { "glPixelTransformParameteriEXT", "GL_EXT_pixel_transform", wine_glPixelTransformParameteriEXT },
19082   { "glPixelTransformParameterivEXT", "GL_EXT_pixel_transform", wine_glPixelTransformParameterivEXT },
19083   { "glPointParameterf", "GL_VERSION_1_4", wine_glPointParameterf },
19084   { "glPointParameterfARB", "GL_ARB_point_parameters", wine_glPointParameterfARB },
19085   { "glPointParameterfEXT", "GL_EXT_point_parameters", wine_glPointParameterfEXT },
19086   { "glPointParameterfSGIS", "GL_SGIS_point_parameters", wine_glPointParameterfSGIS },
19087   { "glPointParameterfv", "GL_VERSION_1_4", wine_glPointParameterfv },
19088   { "glPointParameterfvARB", "GL_ARB_point_parameters", wine_glPointParameterfvARB },
19089   { "glPointParameterfvEXT", "GL_EXT_point_parameters", wine_glPointParameterfvEXT },
19090   { "glPointParameterfvSGIS", "GL_SGIS_point_parameters", wine_glPointParameterfvSGIS },
19091   { "glPointParameteri", "GL_VERSION_1_4", wine_glPointParameteri },
19092   { "glPointParameteriNV", "GL_NV_point_sprite", wine_glPointParameteriNV },
19093   { "glPointParameteriv", "GL_VERSION_1_4", wine_glPointParameteriv },
19094   { "glPointParameterivNV", "GL_NV_point_sprite", wine_glPointParameterivNV },
19095   { "glPollAsyncSGIX", "GL_SGIX_async", wine_glPollAsyncSGIX },
19096   { "glPollInstrumentsSGIX", "GL_SGIX_instruments", wine_glPollInstrumentsSGIX },
19097   { "glPolygonOffsetEXT", "GL_EXT_polygon_offset", wine_glPolygonOffsetEXT },
19098   { "glPresentFrameDualFillNV", "GL_NV_present_video", wine_glPresentFrameDualFillNV },
19099   { "glPresentFrameKeyedNV", "GL_NV_present_video", wine_glPresentFrameKeyedNV },
19100   { "glPrimitiveRestartIndex", "GL_VERSION_3_1", wine_glPrimitiveRestartIndex },
19101   { "glPrimitiveRestartIndexNV", "GL_NV_primitive_restart", wine_glPrimitiveRestartIndexNV },
19102   { "glPrimitiveRestartNV", "GL_NV_primitive_restart", wine_glPrimitiveRestartNV },
19103   { "glPrioritizeTexturesEXT", "GL_EXT_texture_object", wine_glPrioritizeTexturesEXT },
19104   { "glProgramBinary", "GL_ARB_get_program_binary", wine_glProgramBinary },
19105   { "glProgramBufferParametersIivNV", "GL_NV_parameter_buffer_object", wine_glProgramBufferParametersIivNV },
19106   { "glProgramBufferParametersIuivNV", "GL_NV_parameter_buffer_object", wine_glProgramBufferParametersIuivNV },
19107   { "glProgramBufferParametersfvNV", "GL_NV_parameter_buffer_object", wine_glProgramBufferParametersfvNV },
19108   { "glProgramEnvParameter4dARB", "GL_ARB_vertex_program", wine_glProgramEnvParameter4dARB },
19109   { "glProgramEnvParameter4dvARB", "GL_ARB_vertex_program", wine_glProgramEnvParameter4dvARB },
19110   { "glProgramEnvParameter4fARB", "GL_ARB_vertex_program", wine_glProgramEnvParameter4fARB },
19111   { "glProgramEnvParameter4fvARB", "GL_ARB_vertex_program", wine_glProgramEnvParameter4fvARB },
19112   { "glProgramEnvParameterI4iNV", "GL_NV_gpu_program4", wine_glProgramEnvParameterI4iNV },
19113   { "glProgramEnvParameterI4ivNV", "GL_NV_gpu_program4", wine_glProgramEnvParameterI4ivNV },
19114   { "glProgramEnvParameterI4uiNV", "GL_NV_gpu_program4", wine_glProgramEnvParameterI4uiNV },
19115   { "glProgramEnvParameterI4uivNV", "GL_NV_gpu_program4", wine_glProgramEnvParameterI4uivNV },
19116   { "glProgramEnvParameters4fvEXT", "GL_EXT_gpu_program_parameters", wine_glProgramEnvParameters4fvEXT },
19117   { "glProgramEnvParametersI4ivNV", "GL_NV_gpu_program4", wine_glProgramEnvParametersI4ivNV },
19118   { "glProgramEnvParametersI4uivNV", "GL_NV_gpu_program4", wine_glProgramEnvParametersI4uivNV },
19119   { "glProgramLocalParameter4dARB", "GL_ARB_vertex_program", wine_glProgramLocalParameter4dARB },
19120   { "glProgramLocalParameter4dvARB", "GL_ARB_vertex_program", wine_glProgramLocalParameter4dvARB },
19121   { "glProgramLocalParameter4fARB", "GL_ARB_vertex_program", wine_glProgramLocalParameter4fARB },
19122   { "glProgramLocalParameter4fvARB", "GL_ARB_vertex_program", wine_glProgramLocalParameter4fvARB },
19123   { "glProgramLocalParameterI4iNV", "GL_NV_gpu_program4", wine_glProgramLocalParameterI4iNV },
19124   { "glProgramLocalParameterI4ivNV", "GL_NV_gpu_program4", wine_glProgramLocalParameterI4ivNV },
19125   { "glProgramLocalParameterI4uiNV", "GL_NV_gpu_program4", wine_glProgramLocalParameterI4uiNV },
19126   { "glProgramLocalParameterI4uivNV", "GL_NV_gpu_program4", wine_glProgramLocalParameterI4uivNV },
19127   { "glProgramLocalParameters4fvEXT", "GL_EXT_gpu_program_parameters", wine_glProgramLocalParameters4fvEXT },
19128   { "glProgramLocalParametersI4ivNV", "GL_NV_gpu_program4", wine_glProgramLocalParametersI4ivNV },
19129   { "glProgramLocalParametersI4uivNV", "GL_NV_gpu_program4", wine_glProgramLocalParametersI4uivNV },
19130   { "glProgramNamedParameter4dNV", "GL_NV_fragment_program", wine_glProgramNamedParameter4dNV },
19131   { "glProgramNamedParameter4dvNV", "GL_NV_fragment_program", wine_glProgramNamedParameter4dvNV },
19132   { "glProgramNamedParameter4fNV", "GL_NV_fragment_program", wine_glProgramNamedParameter4fNV },
19133   { "glProgramNamedParameter4fvNV", "GL_NV_fragment_program", wine_glProgramNamedParameter4fvNV },
19134   { "glProgramParameter4dNV", "GL_NV_vertex_program", wine_glProgramParameter4dNV },
19135   { "glProgramParameter4dvNV", "GL_NV_vertex_program", wine_glProgramParameter4dvNV },
19136   { "glProgramParameter4fNV", "GL_NV_vertex_program", wine_glProgramParameter4fNV },
19137   { "glProgramParameter4fvNV", "GL_NV_vertex_program", wine_glProgramParameter4fvNV },
19138   { "glProgramParameteri", "GL_ARB_get_program_binary", wine_glProgramParameteri },
19139   { "glProgramParameteriARB", "GL_ARB_geometry_shader4", wine_glProgramParameteriARB },
19140   { "glProgramParameteriEXT", "GL_EXT_geometry_shader4", wine_glProgramParameteriEXT },
19141   { "glProgramParameters4dvNV", "GL_NV_vertex_program", wine_glProgramParameters4dvNV },
19142   { "glProgramParameters4fvNV", "GL_NV_vertex_program", wine_glProgramParameters4fvNV },
19143   { "glProgramStringARB", "GL_ARB_vertex_program", wine_glProgramStringARB },
19144   { "glProgramSubroutineParametersuivNV", "GL_NV_gpu_program5", wine_glProgramSubroutineParametersuivNV },
19145   { "glProgramUniform1d", "GL_ARB_separate_shader_objects", wine_glProgramUniform1d },
19146   { "glProgramUniform1dEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1dEXT },
19147   { "glProgramUniform1dv", "GL_ARB_separate_shader_objects", wine_glProgramUniform1dv },
19148   { "glProgramUniform1dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1dvEXT },
19149   { "glProgramUniform1f", "GL_ARB_separate_shader_objects", wine_glProgramUniform1f },
19150   { "glProgramUniform1fEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1fEXT },
19151   { "glProgramUniform1fv", "GL_ARB_separate_shader_objects", wine_glProgramUniform1fv },
19152   { "glProgramUniform1fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1fvEXT },
19153   { "glProgramUniform1i", "GL_ARB_separate_shader_objects", wine_glProgramUniform1i },
19154   { "glProgramUniform1i64NV", "GL_NV_gpu_shader5", wine_glProgramUniform1i64NV },
19155   { "glProgramUniform1i64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform1i64vNV },
19156   { "glProgramUniform1iEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1iEXT },
19157   { "glProgramUniform1iv", "GL_ARB_separate_shader_objects", wine_glProgramUniform1iv },
19158   { "glProgramUniform1ivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1ivEXT },
19159   { "glProgramUniform1ui", "GL_ARB_separate_shader_objects", wine_glProgramUniform1ui },
19160   { "glProgramUniform1ui64NV", "GL_NV_gpu_shader5", wine_glProgramUniform1ui64NV },
19161   { "glProgramUniform1ui64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform1ui64vNV },
19162   { "glProgramUniform1uiEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1uiEXT },
19163   { "glProgramUniform1uiv", "GL_ARB_separate_shader_objects", wine_glProgramUniform1uiv },
19164   { "glProgramUniform1uivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1uivEXT },
19165   { "glProgramUniform2d", "GL_ARB_separate_shader_objects", wine_glProgramUniform2d },
19166   { "glProgramUniform2dEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2dEXT },
19167   { "glProgramUniform2dv", "GL_ARB_separate_shader_objects", wine_glProgramUniform2dv },
19168   { "glProgramUniform2dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2dvEXT },
19169   { "glProgramUniform2f", "GL_ARB_separate_shader_objects", wine_glProgramUniform2f },
19170   { "glProgramUniform2fEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2fEXT },
19171   { "glProgramUniform2fv", "GL_ARB_separate_shader_objects", wine_glProgramUniform2fv },
19172   { "glProgramUniform2fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2fvEXT },
19173   { "glProgramUniform2i", "GL_ARB_separate_shader_objects", wine_glProgramUniform2i },
19174   { "glProgramUniform2i64NV", "GL_NV_gpu_shader5", wine_glProgramUniform2i64NV },
19175   { "glProgramUniform2i64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform2i64vNV },
19176   { "glProgramUniform2iEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2iEXT },
19177   { "glProgramUniform2iv", "GL_ARB_separate_shader_objects", wine_glProgramUniform2iv },
19178   { "glProgramUniform2ivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2ivEXT },
19179   { "glProgramUniform2ui", "GL_ARB_separate_shader_objects", wine_glProgramUniform2ui },
19180   { "glProgramUniform2ui64NV", "GL_NV_gpu_shader5", wine_glProgramUniform2ui64NV },
19181   { "glProgramUniform2ui64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform2ui64vNV },
19182   { "glProgramUniform2uiEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2uiEXT },
19183   { "glProgramUniform2uiv", "GL_ARB_separate_shader_objects", wine_glProgramUniform2uiv },
19184   { "glProgramUniform2uivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2uivEXT },
19185   { "glProgramUniform3d", "GL_ARB_separate_shader_objects", wine_glProgramUniform3d },
19186   { "glProgramUniform3dEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3dEXT },
19187   { "glProgramUniform3dv", "GL_ARB_separate_shader_objects", wine_glProgramUniform3dv },
19188   { "glProgramUniform3dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3dvEXT },
19189   { "glProgramUniform3f", "GL_ARB_separate_shader_objects", wine_glProgramUniform3f },
19190   { "glProgramUniform3fEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3fEXT },
19191   { "glProgramUniform3fv", "GL_ARB_separate_shader_objects", wine_glProgramUniform3fv },
19192   { "glProgramUniform3fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3fvEXT },
19193   { "glProgramUniform3i", "GL_ARB_separate_shader_objects", wine_glProgramUniform3i },
19194   { "glProgramUniform3i64NV", "GL_NV_gpu_shader5", wine_glProgramUniform3i64NV },
19195   { "glProgramUniform3i64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform3i64vNV },
19196   { "glProgramUniform3iEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3iEXT },
19197   { "glProgramUniform3iv", "GL_ARB_separate_shader_objects", wine_glProgramUniform3iv },
19198   { "glProgramUniform3ivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3ivEXT },
19199   { "glProgramUniform3ui", "GL_ARB_separate_shader_objects", wine_glProgramUniform3ui },
19200   { "glProgramUniform3ui64NV", "GL_NV_gpu_shader5", wine_glProgramUniform3ui64NV },
19201   { "glProgramUniform3ui64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform3ui64vNV },
19202   { "glProgramUniform3uiEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3uiEXT },
19203   { "glProgramUniform3uiv", "GL_ARB_separate_shader_objects", wine_glProgramUniform3uiv },
19204   { "glProgramUniform3uivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3uivEXT },
19205   { "glProgramUniform4d", "GL_ARB_separate_shader_objects", wine_glProgramUniform4d },
19206   { "glProgramUniform4dEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4dEXT },
19207   { "glProgramUniform4dv", "GL_ARB_separate_shader_objects", wine_glProgramUniform4dv },
19208   { "glProgramUniform4dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4dvEXT },
19209   { "glProgramUniform4f", "GL_ARB_separate_shader_objects", wine_glProgramUniform4f },
19210   { "glProgramUniform4fEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4fEXT },
19211   { "glProgramUniform4fv", "GL_ARB_separate_shader_objects", wine_glProgramUniform4fv },
19212   { "glProgramUniform4fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4fvEXT },
19213   { "glProgramUniform4i", "GL_ARB_separate_shader_objects", wine_glProgramUniform4i },
19214   { "glProgramUniform4i64NV", "GL_NV_gpu_shader5", wine_glProgramUniform4i64NV },
19215   { "glProgramUniform4i64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform4i64vNV },
19216   { "glProgramUniform4iEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4iEXT },
19217   { "glProgramUniform4iv", "GL_ARB_separate_shader_objects", wine_glProgramUniform4iv },
19218   { "glProgramUniform4ivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4ivEXT },
19219   { "glProgramUniform4ui", "GL_ARB_separate_shader_objects", wine_glProgramUniform4ui },
19220   { "glProgramUniform4ui64NV", "GL_NV_gpu_shader5", wine_glProgramUniform4ui64NV },
19221   { "glProgramUniform4ui64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform4ui64vNV },
19222   { "glProgramUniform4uiEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4uiEXT },
19223   { "glProgramUniform4uiv", "GL_ARB_separate_shader_objects", wine_glProgramUniform4uiv },
19224   { "glProgramUniform4uivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4uivEXT },
19225   { "glProgramUniformMatrix2dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2dv },
19226   { "glProgramUniformMatrix2dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2dvEXT },
19227   { "glProgramUniformMatrix2fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2fv },
19228   { "glProgramUniformMatrix2fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2fvEXT },
19229   { "glProgramUniformMatrix2x3dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2x3dv },
19230   { "glProgramUniformMatrix2x3dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2x3dvEXT },
19231   { "glProgramUniformMatrix2x3fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2x3fv },
19232   { "glProgramUniformMatrix2x3fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2x3fvEXT },
19233   { "glProgramUniformMatrix2x4dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2x4dv },
19234   { "glProgramUniformMatrix2x4dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2x4dvEXT },
19235   { "glProgramUniformMatrix2x4fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2x4fv },
19236   { "glProgramUniformMatrix2x4fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2x4fvEXT },
19237   { "glProgramUniformMatrix3dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3dv },
19238   { "glProgramUniformMatrix3dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3dvEXT },
19239   { "glProgramUniformMatrix3fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3fv },
19240   { "glProgramUniformMatrix3fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3fvEXT },
19241   { "glProgramUniformMatrix3x2dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3x2dv },
19242   { "glProgramUniformMatrix3x2dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3x2dvEXT },
19243   { "glProgramUniformMatrix3x2fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3x2fv },
19244   { "glProgramUniformMatrix3x2fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3x2fvEXT },
19245   { "glProgramUniformMatrix3x4dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3x4dv },
19246   { "glProgramUniformMatrix3x4dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3x4dvEXT },
19247   { "glProgramUniformMatrix3x4fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3x4fv },
19248   { "glProgramUniformMatrix3x4fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3x4fvEXT },
19249   { "glProgramUniformMatrix4dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4dv },
19250   { "glProgramUniformMatrix4dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4dvEXT },
19251   { "glProgramUniformMatrix4fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4fv },
19252   { "glProgramUniformMatrix4fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4fvEXT },
19253   { "glProgramUniformMatrix4x2dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4x2dv },
19254   { "glProgramUniformMatrix4x2dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4x2dvEXT },
19255   { "glProgramUniformMatrix4x2fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4x2fv },
19256   { "glProgramUniformMatrix4x2fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4x2fvEXT },
19257   { "glProgramUniformMatrix4x3dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4x3dv },
19258   { "glProgramUniformMatrix4x3dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4x3dvEXT },
19259   { "glProgramUniformMatrix4x3fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4x3fv },
19260   { "glProgramUniformMatrix4x3fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4x3fvEXT },
19261   { "glProgramUniformui64NV", "GL_NV_shader_buffer_load", wine_glProgramUniformui64NV },
19262   { "glProgramUniformui64vNV", "GL_NV_shader_buffer_load", wine_glProgramUniformui64vNV },
19263   { "glProgramVertexLimitNV", "GL_NV_geometry_program4", wine_glProgramVertexLimitNV },
19264   { "glProvokingVertex", "GL_ARB_provoking_vertex", wine_glProvokingVertex },
19265   { "glProvokingVertexEXT", "GL_EXT_provoking_vertex", wine_glProvokingVertexEXT },
19266   { "glPushClientAttribDefaultEXT", "GL_EXT_direct_state_access", wine_glPushClientAttribDefaultEXT },
19267   { "glQueryCounter", "GL_ARB_timer_query", wine_glQueryCounter },
19268   { "glReadBufferRegion", "GL_KTX_buffer_region", wine_glReadBufferRegion },
19269   { "glReadInstrumentsSGIX", "GL_SGIX_instruments", wine_glReadInstrumentsSGIX },
19270   { "glReadnPixelsARB", "GL_ARB_robustness", wine_glReadnPixelsARB },
19271   { "glReferencePlaneSGIX", "GL_SGIX_reference_plane", wine_glReferencePlaneSGIX },
19272   { "glReleaseShaderCompiler", "GL_ARB_ES2_compatibility", wine_glReleaseShaderCompiler },
19273   { "glRenderbufferStorage", "GL_ARB_framebuffer_object", wine_glRenderbufferStorage },
19274   { "glRenderbufferStorageEXT", "GL_EXT_framebuffer_object", wine_glRenderbufferStorageEXT },
19275   { "glRenderbufferStorageMultisample", "GL_ARB_framebuffer_object", wine_glRenderbufferStorageMultisample },
19276   { "glRenderbufferStorageMultisampleCoverageNV", "GL_NV_framebuffer_multisample_coverage", wine_glRenderbufferStorageMultisampleCoverageNV },
19277   { "glRenderbufferStorageMultisampleEXT", "GL_EXT_framebuffer_multisample", wine_glRenderbufferStorageMultisampleEXT },
19278   { "glReplacementCodePointerSUN", "GL_SUN_triangle_list", wine_glReplacementCodePointerSUN },
19279   { "glReplacementCodeubSUN", "GL_SUN_triangle_list", wine_glReplacementCodeubSUN },
19280   { "glReplacementCodeubvSUN", "GL_SUN_triangle_list", wine_glReplacementCodeubvSUN },
19281   { "glReplacementCodeuiColor3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor3fVertex3fSUN },
19282   { "glReplacementCodeuiColor3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor3fVertex3fvSUN },
19283   { "glReplacementCodeuiColor4fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor4fNormal3fVertex3fSUN },
19284   { "glReplacementCodeuiColor4fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor4fNormal3fVertex3fvSUN },
19285   { "glReplacementCodeuiColor4ubVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor4ubVertex3fSUN },
19286   { "glReplacementCodeuiColor4ubVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor4ubVertex3fvSUN },
19287   { "glReplacementCodeuiNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiNormal3fVertex3fSUN },
19288   { "glReplacementCodeuiNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiNormal3fVertex3fvSUN },
19289   { "glReplacementCodeuiSUN", "GL_SUN_triangle_list", wine_glReplacementCodeuiSUN },
19290   { "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN },
19291   { "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN },
19292   { "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN },
19293   { "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN },
19294   { "glReplacementCodeuiTexCoord2fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fVertex3fSUN },
19295   { "glReplacementCodeuiTexCoord2fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fVertex3fvSUN },
19296   { "glReplacementCodeuiVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiVertex3fSUN },
19297   { "glReplacementCodeuiVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiVertex3fvSUN },
19298   { "glReplacementCodeuivSUN", "GL_SUN_triangle_list", wine_glReplacementCodeuivSUN },
19299   { "glReplacementCodeusSUN", "GL_SUN_triangle_list", wine_glReplacementCodeusSUN },
19300   { "glReplacementCodeusvSUN", "GL_SUN_triangle_list", wine_glReplacementCodeusvSUN },
19301   { "glRequestResidentProgramsNV", "GL_NV_vertex_program", wine_glRequestResidentProgramsNV },
19302   { "glResetHistogram", "GL_VERSION_1_2_DEPRECATED", wine_glResetHistogram },
19303   { "glResetHistogramEXT", "GL_EXT_histogram", wine_glResetHistogramEXT },
19304   { "glResetMinmax", "GL_VERSION_1_2_DEPRECATED", wine_glResetMinmax },
19305   { "glResetMinmaxEXT", "GL_EXT_histogram", wine_glResetMinmaxEXT },
19306   { "glResizeBuffersMESA", "GL_MESA_resize_buffers", wine_glResizeBuffersMESA },
19307   { "glResumeTransformFeedback", "GL_ARB_transform_feedback2", wine_glResumeTransformFeedback },
19308   { "glResumeTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glResumeTransformFeedbackNV },
19309   { "glSampleCoverage", "GL_VERSION_1_3", wine_glSampleCoverage },
19310   { "glSampleCoverageARB", "GL_ARB_multisample", wine_glSampleCoverageARB },
19311   { "glSampleMapATI", "GL_ATI_fragment_shader", wine_glSampleMapATI },
19312   { "glSampleMaskEXT", "GL_EXT_multisample", wine_glSampleMaskEXT },
19313   { "glSampleMaskIndexedNV", "GL_NV_explicit_multisample", wine_glSampleMaskIndexedNV },
19314   { "glSampleMaskSGIS", "GL_SGIS_multisample", wine_glSampleMaskSGIS },
19315   { "glSampleMaski", "GL_ARB_texture_multisample", wine_glSampleMaski },
19316   { "glSamplePatternEXT", "GL_EXT_multisample", wine_glSamplePatternEXT },
19317   { "glSamplePatternSGIS", "GL_SGIS_multisample", wine_glSamplePatternSGIS },
19318   { "glSamplerParameterIiv", "GL_ARB_sampler_objects", wine_glSamplerParameterIiv },
19319   { "glSamplerParameterIuiv", "GL_ARB_sampler_objects", wine_glSamplerParameterIuiv },
19320   { "glSamplerParameterf", "GL_ARB_sampler_objects", wine_glSamplerParameterf },
19321   { "glSamplerParameterfv", "GL_ARB_sampler_objects", wine_glSamplerParameterfv },
19322   { "glSamplerParameteri", "GL_ARB_sampler_objects", wine_glSamplerParameteri },
19323   { "glSamplerParameteriv", "GL_ARB_sampler_objects", wine_glSamplerParameteriv },
19324   { "glScissorArrayv", "GL_ARB_viewport_array", wine_glScissorArrayv },
19325   { "glScissorIndexed", "GL_ARB_viewport_array", wine_glScissorIndexed },
19326   { "glScissorIndexedv", "GL_ARB_viewport_array", wine_glScissorIndexedv },
19327   { "glSecondaryColor3b", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3b },
19328   { "glSecondaryColor3bEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3bEXT },
19329   { "glSecondaryColor3bv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3bv },
19330   { "glSecondaryColor3bvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3bvEXT },
19331   { "glSecondaryColor3d", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3d },
19332   { "glSecondaryColor3dEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3dEXT },
19333   { "glSecondaryColor3dv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3dv },
19334   { "glSecondaryColor3dvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3dvEXT },
19335   { "glSecondaryColor3f", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3f },
19336   { "glSecondaryColor3fEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3fEXT },
19337   { "glSecondaryColor3fv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3fv },
19338   { "glSecondaryColor3fvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3fvEXT },
19339   { "glSecondaryColor3hNV", "GL_NV_half_float", wine_glSecondaryColor3hNV },
19340   { "glSecondaryColor3hvNV", "GL_NV_half_float", wine_glSecondaryColor3hvNV },
19341   { "glSecondaryColor3i", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3i },
19342   { "glSecondaryColor3iEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3iEXT },
19343   { "glSecondaryColor3iv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3iv },
19344   { "glSecondaryColor3ivEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3ivEXT },
19345   { "glSecondaryColor3s", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3s },
19346   { "glSecondaryColor3sEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3sEXT },
19347   { "glSecondaryColor3sv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3sv },
19348   { "glSecondaryColor3svEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3svEXT },
19349   { "glSecondaryColor3ub", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3ub },
19350   { "glSecondaryColor3ubEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3ubEXT },
19351   { "glSecondaryColor3ubv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3ubv },
19352   { "glSecondaryColor3ubvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3ubvEXT },
19353   { "glSecondaryColor3ui", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3ui },
19354   { "glSecondaryColor3uiEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3uiEXT },
19355   { "glSecondaryColor3uiv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3uiv },
19356   { "glSecondaryColor3uivEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3uivEXT },
19357   { "glSecondaryColor3us", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3us },
19358   { "glSecondaryColor3usEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3usEXT },
19359   { "glSecondaryColor3usv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3usv },
19360   { "glSecondaryColor3usvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3usvEXT },
19361   { "glSecondaryColorFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glSecondaryColorFormatNV },
19362   { "glSecondaryColorP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glSecondaryColorP3ui },
19363   { "glSecondaryColorP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glSecondaryColorP3uiv },
19364   { "glSecondaryColorPointer", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColorPointer },
19365   { "glSecondaryColorPointerEXT", "GL_EXT_secondary_color", wine_glSecondaryColorPointerEXT },
19366   { "glSecondaryColorPointerListIBM", "GL_IBM_vertex_array_lists", wine_glSecondaryColorPointerListIBM },
19367   { "glSelectPerfMonitorCountersAMD", "GL_AMD_performance_monitor", wine_glSelectPerfMonitorCountersAMD },
19368   { "glSelectTextureCoordSetSGIS", "GL_SGIS_multitexture", wine_glSelectTextureCoordSetSGIS },
19369   { "glSelectTextureSGIS", "GL_SGIS_multitexture", wine_glSelectTextureSGIS },
19370   { "glSeparableFilter2D", "GL_VERSION_1_2_DEPRECATED", wine_glSeparableFilter2D },
19371   { "glSeparableFilter2DEXT", "GL_EXT_convolution", wine_glSeparableFilter2DEXT },
19372   { "glSetFenceAPPLE", "GL_APPLE_fence", wine_glSetFenceAPPLE },
19373   { "glSetFenceNV", "GL_NV_fence", wine_glSetFenceNV },
19374   { "glSetFragmentShaderConstantATI", "GL_ATI_fragment_shader", wine_glSetFragmentShaderConstantATI },
19375   { "glSetInvariantEXT", "GL_EXT_vertex_shader", wine_glSetInvariantEXT },
19376   { "glSetLocalConstantEXT", "GL_EXT_vertex_shader", wine_glSetLocalConstantEXT },
19377   { "glShaderBinary", "GL_ARB_ES2_compatibility", wine_glShaderBinary },
19378   { "glShaderOp1EXT", "GL_EXT_vertex_shader", wine_glShaderOp1EXT },
19379   { "glShaderOp2EXT", "GL_EXT_vertex_shader", wine_glShaderOp2EXT },
19380   { "glShaderOp3EXT", "GL_EXT_vertex_shader", wine_glShaderOp3EXT },
19381   { "glShaderSource", "GL_VERSION_2_0", wine_glShaderSource },
19382   { "glShaderSourceARB", "GL_ARB_shader_objects", wine_glShaderSourceARB },
19383   { "glSharpenTexFuncSGIS", "GL_SGIS_sharpen_texture", wine_glSharpenTexFuncSGIS },
19384   { "glSpriteParameterfSGIX", "GL_SGIX_sprite", wine_glSpriteParameterfSGIX },
19385   { "glSpriteParameterfvSGIX", "GL_SGIX_sprite", wine_glSpriteParameterfvSGIX },
19386   { "glSpriteParameteriSGIX", "GL_SGIX_sprite", wine_glSpriteParameteriSGIX },
19387   { "glSpriteParameterivSGIX", "GL_SGIX_sprite", wine_glSpriteParameterivSGIX },
19388   { "glStartInstrumentsSGIX", "GL_SGIX_instruments", wine_glStartInstrumentsSGIX },
19389   { "glStencilClearTagEXT", "GL_EXT_stencil_clear_tag", wine_glStencilClearTagEXT },
19390   { "glStencilFuncSeparate", "GL_VERSION_2_0", wine_glStencilFuncSeparate },
19391   { "glStencilFuncSeparateATI", "GL_ATI_separate_stencil", wine_glStencilFuncSeparateATI },
19392   { "glStencilMaskSeparate", "GL_VERSION_2_0", wine_glStencilMaskSeparate },
19393   { "glStencilOpSeparate", "GL_VERSION_2_0", wine_glStencilOpSeparate },
19394   { "glStencilOpSeparateATI", "GL_ATI_separate_stencil", wine_glStencilOpSeparateATI },
19395   { "glStopInstrumentsSGIX", "GL_SGIX_instruments", wine_glStopInstrumentsSGIX },
19396   { "glStringMarkerGREMEDY", "GL_GREMEDY_string_marker", wine_glStringMarkerGREMEDY },
19397   { "glSwizzleEXT", "GL_EXT_vertex_shader", wine_glSwizzleEXT },
19398   { "glTagSampleBufferSGIX", "GL_SGIX_tag_sample_buffer", wine_glTagSampleBufferSGIX },
19399   { "glTangent3bEXT", "GL_EXT_coordinate_frame", wine_glTangent3bEXT },
19400   { "glTangent3bvEXT", "GL_EXT_coordinate_frame", wine_glTangent3bvEXT },
19401   { "glTangent3dEXT", "GL_EXT_coordinate_frame", wine_glTangent3dEXT },
19402   { "glTangent3dvEXT", "GL_EXT_coordinate_frame", wine_glTangent3dvEXT },
19403   { "glTangent3fEXT", "GL_EXT_coordinate_frame", wine_glTangent3fEXT },
19404   { "glTangent3fvEXT", "GL_EXT_coordinate_frame", wine_glTangent3fvEXT },
19405   { "glTangent3iEXT", "GL_EXT_coordinate_frame", wine_glTangent3iEXT },
19406   { "glTangent3ivEXT", "GL_EXT_coordinate_frame", wine_glTangent3ivEXT },
19407   { "glTangent3sEXT", "GL_EXT_coordinate_frame", wine_glTangent3sEXT },
19408   { "glTangent3svEXT", "GL_EXT_coordinate_frame", wine_glTangent3svEXT },
19409   { "glTangentPointerEXT", "GL_EXT_coordinate_frame", wine_glTangentPointerEXT },
19410   { "glTbufferMask3DFX", "GL_3DFX_tbuffer", wine_glTbufferMask3DFX },
19411   { "glTessellationFactorAMD", "GL_AMD_vertex_shader_tesselator", wine_glTessellationFactorAMD },
19412   { "glTessellationModeAMD", "GL_AMD_vertex_shader_tesselator", wine_glTessellationModeAMD },
19413   { "glTestFenceAPPLE", "GL_APPLE_fence", wine_glTestFenceAPPLE },
19414   { "glTestFenceNV", "GL_NV_fence", wine_glTestFenceNV },
19415   { "glTestObjectAPPLE", "GL_APPLE_fence", wine_glTestObjectAPPLE },
19416   { "glTexBuffer", "GL_VERSION_3_1", wine_glTexBuffer },
19417   { "glTexBufferARB", "GL_ARB_texture_buffer_object", wine_glTexBufferARB },
19418   { "glTexBufferEXT", "GL_EXT_texture_buffer_object", wine_glTexBufferEXT },
19419   { "glTexBumpParameterfvATI", "GL_ATI_envmap_bumpmap", wine_glTexBumpParameterfvATI },
19420   { "glTexBumpParameterivATI", "GL_ATI_envmap_bumpmap", wine_glTexBumpParameterivATI },
19421   { "glTexCoord1hNV", "GL_NV_half_float", wine_glTexCoord1hNV },
19422   { "glTexCoord1hvNV", "GL_NV_half_float", wine_glTexCoord1hvNV },
19423   { "glTexCoord2fColor3fVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fColor3fVertex3fSUN },
19424   { "glTexCoord2fColor3fVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fColor3fVertex3fvSUN },
19425   { "glTexCoord2fColor4fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fColor4fNormal3fVertex3fSUN },
19426   { "glTexCoord2fColor4fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fColor4fNormal3fVertex3fvSUN },
19427   { "glTexCoord2fColor4ubVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fColor4ubVertex3fSUN },
19428   { "glTexCoord2fColor4ubVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fColor4ubVertex3fvSUN },
19429   { "glTexCoord2fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fNormal3fVertex3fSUN },
19430   { "glTexCoord2fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fNormal3fVertex3fvSUN },
19431   { "glTexCoord2fVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fVertex3fSUN },
19432   { "glTexCoord2fVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fVertex3fvSUN },
19433   { "glTexCoord2hNV", "GL_NV_half_float", wine_glTexCoord2hNV },
19434   { "glTexCoord2hvNV", "GL_NV_half_float", wine_glTexCoord2hvNV },
19435   { "glTexCoord3hNV", "GL_NV_half_float", wine_glTexCoord3hNV },
19436   { "glTexCoord3hvNV", "GL_NV_half_float", wine_glTexCoord3hvNV },
19437   { "glTexCoord4fColor4fNormal3fVertex4fSUN", "GL_SUN_vertex", wine_glTexCoord4fColor4fNormal3fVertex4fSUN },
19438   { "glTexCoord4fColor4fNormal3fVertex4fvSUN", "GL_SUN_vertex", wine_glTexCoord4fColor4fNormal3fVertex4fvSUN },
19439   { "glTexCoord4fVertex4fSUN", "GL_SUN_vertex", wine_glTexCoord4fVertex4fSUN },
19440   { "glTexCoord4fVertex4fvSUN", "GL_SUN_vertex", wine_glTexCoord4fVertex4fvSUN },
19441   { "glTexCoord4hNV", "GL_NV_half_float", wine_glTexCoord4hNV },
19442   { "glTexCoord4hvNV", "GL_NV_half_float", wine_glTexCoord4hvNV },
19443   { "glTexCoordFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glTexCoordFormatNV },
19444   { "glTexCoordP1ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP1ui },
19445   { "glTexCoordP1uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP1uiv },
19446   { "glTexCoordP2ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP2ui },
19447   { "glTexCoordP2uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP2uiv },
19448   { "glTexCoordP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP3ui },
19449   { "glTexCoordP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP3uiv },
19450   { "glTexCoordP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP4ui },
19451   { "glTexCoordP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP4uiv },
19452   { "glTexCoordPointerEXT", "GL_EXT_vertex_array", wine_glTexCoordPointerEXT },
19453   { "glTexCoordPointerListIBM", "GL_IBM_vertex_array_lists", wine_glTexCoordPointerListIBM },
19454   { "glTexCoordPointervINTEL", "GL_INTEL_parallel_arrays", wine_glTexCoordPointervINTEL },
19455   { "glTexFilterFuncSGIS", "GL_SGIS_texture_filter4", wine_glTexFilterFuncSGIS },
19456   { "glTexImage2DMultisample", "GL_ARB_texture_multisample", wine_glTexImage2DMultisample },
19457   { "glTexImage3D", "GL_VERSION_1_2", wine_glTexImage3D },
19458   { "glTexImage3DEXT", "GL_EXT_texture3D", wine_glTexImage3DEXT },
19459   { "glTexImage3DMultisample", "GL_ARB_texture_multisample", wine_glTexImage3DMultisample },
19460   { "glTexImage4DSGIS", "GL_SGIS_texture4D", wine_glTexImage4DSGIS },
19461   { "glTexParameterIiv", "GL_VERSION_3_0", wine_glTexParameterIiv },
19462   { "glTexParameterIivEXT", "GL_EXT_texture_integer", wine_glTexParameterIivEXT },
19463   { "glTexParameterIuiv", "GL_VERSION_3_0", wine_glTexParameterIuiv },
19464   { "glTexParameterIuivEXT", "GL_EXT_texture_integer", wine_glTexParameterIuivEXT },
19465   { "glTexRenderbufferNV", "GL_NV_explicit_multisample", wine_glTexRenderbufferNV },
19466   { "glTexSubImage1DEXT", "GL_EXT_subtexture", wine_glTexSubImage1DEXT },
19467   { "glTexSubImage2DEXT", "GL_EXT_subtexture", wine_glTexSubImage2DEXT },
19468   { "glTexSubImage3D", "GL_VERSION_1_2", wine_glTexSubImage3D },
19469   { "glTexSubImage3DEXT", "GL_EXT_texture3D", wine_glTexSubImage3DEXT },
19470   { "glTexSubImage4DSGIS", "GL_SGIS_texture4D", wine_glTexSubImage4DSGIS },
19471   { "glTextureBarrierNV", "GL_NV_texture_barrier", wine_glTextureBarrierNV },
19472   { "glTextureBufferEXT", "GL_EXT_direct_state_access", wine_glTextureBufferEXT },
19473   { "glTextureColorMaskSGIS", "GL_SGIS_texture_color_mask", wine_glTextureColorMaskSGIS },
19474   { "glTextureImage1DEXT", "GL_EXT_direct_state_access", wine_glTextureImage1DEXT },
19475   { "glTextureImage2DEXT", "GL_EXT_direct_state_access", wine_glTextureImage2DEXT },
19476   { "glTextureImage3DEXT", "GL_EXT_direct_state_access", wine_glTextureImage3DEXT },
19477   { "glTextureLightEXT", "GL_EXT_light_texture", wine_glTextureLightEXT },
19478   { "glTextureMaterialEXT", "GL_EXT_light_texture", wine_glTextureMaterialEXT },
19479   { "glTextureNormalEXT", "GL_EXT_texture_perturb_normal", wine_glTextureNormalEXT },
19480   { "glTextureParameterIivEXT", "GL_EXT_direct_state_access", wine_glTextureParameterIivEXT },
19481   { "glTextureParameterIuivEXT", "GL_EXT_direct_state_access", wine_glTextureParameterIuivEXT },
19482   { "glTextureParameterfEXT", "GL_EXT_direct_state_access", wine_glTextureParameterfEXT },
19483   { "glTextureParameterfvEXT", "GL_EXT_direct_state_access", wine_glTextureParameterfvEXT },
19484   { "glTextureParameteriEXT", "GL_EXT_direct_state_access", wine_glTextureParameteriEXT },
19485   { "glTextureParameterivEXT", "GL_EXT_direct_state_access", wine_glTextureParameterivEXT },
19486   { "glTextureRangeAPPLE", "GL_APPLE_texture_range", wine_glTextureRangeAPPLE },
19487   { "glTextureRenderbufferEXT", "GL_EXT_direct_state_access", wine_glTextureRenderbufferEXT },
19488   { "glTextureSubImage1DEXT", "GL_EXT_direct_state_access", wine_glTextureSubImage1DEXT },
19489   { "glTextureSubImage2DEXT", "GL_EXT_direct_state_access", wine_glTextureSubImage2DEXT },
19490   { "glTextureSubImage3DEXT", "GL_EXT_direct_state_access", wine_glTextureSubImage3DEXT },
19491   { "glTrackMatrixNV", "GL_NV_vertex_program", wine_glTrackMatrixNV },
19492   { "glTransformFeedbackAttribsNV", "GL_NV_transform_feedback", wine_glTransformFeedbackAttribsNV },
19493   { "glTransformFeedbackStreamAttribsNV", "GL_NV_transform_feedback", wine_glTransformFeedbackStreamAttribsNV },
19494   { "glTransformFeedbackVaryings", "GL_VERSION_3_0", wine_glTransformFeedbackVaryings },
19495   { "glTransformFeedbackVaryingsEXT", "GL_EXT_transform_feedback", wine_glTransformFeedbackVaryingsEXT },
19496   { "glTransformFeedbackVaryingsNV", "GL_NV_transform_feedback", wine_glTransformFeedbackVaryingsNV },
19497   { "glUniform1d", "GL_ARB_gpu_shader_fp64", wine_glUniform1d },
19498   { "glUniform1dv", "GL_ARB_gpu_shader_fp64", wine_glUniform1dv },
19499   { "glUniform1f", "GL_VERSION_2_0", wine_glUniform1f },
19500   { "glUniform1fARB", "GL_ARB_shader_objects", wine_glUniform1fARB },
19501   { "glUniform1fv", "GL_VERSION_2_0", wine_glUniform1fv },
19502   { "glUniform1fvARB", "GL_ARB_shader_objects", wine_glUniform1fvARB },
19503   { "glUniform1i", "GL_VERSION_2_0", wine_glUniform1i },
19504   { "glUniform1i64NV", "GL_NV_gpu_shader5", wine_glUniform1i64NV },
19505   { "glUniform1i64vNV", "GL_NV_gpu_shader5", wine_glUniform1i64vNV },
19506   { "glUniform1iARB", "GL_ARB_shader_objects", wine_glUniform1iARB },
19507   { "glUniform1iv", "GL_VERSION_2_0", wine_glUniform1iv },
19508   { "glUniform1ivARB", "GL_ARB_shader_objects", wine_glUniform1ivARB },
19509   { "glUniform1ui", "GL_VERSION_3_0", wine_glUniform1ui },
19510   { "glUniform1ui64NV", "GL_NV_gpu_shader5", wine_glUniform1ui64NV },
19511   { "glUniform1ui64vNV", "GL_NV_gpu_shader5", wine_glUniform1ui64vNV },
19512   { "glUniform1uiEXT", "GL_EXT_gpu_shader4", wine_glUniform1uiEXT },
19513   { "glUniform1uiv", "GL_VERSION_3_0", wine_glUniform1uiv },
19514   { "glUniform1uivEXT", "GL_EXT_gpu_shader4", wine_glUniform1uivEXT },
19515   { "glUniform2d", "GL_ARB_gpu_shader_fp64", wine_glUniform2d },
19516   { "glUniform2dv", "GL_ARB_gpu_shader_fp64", wine_glUniform2dv },
19517   { "glUniform2f", "GL_VERSION_2_0", wine_glUniform2f },
19518   { "glUniform2fARB", "GL_ARB_shader_objects", wine_glUniform2fARB },
19519   { "glUniform2fv", "GL_VERSION_2_0", wine_glUniform2fv },
19520   { "glUniform2fvARB", "GL_ARB_shader_objects", wine_glUniform2fvARB },
19521   { "glUniform2i", "GL_VERSION_2_0", wine_glUniform2i },
19522   { "glUniform2i64NV", "GL_NV_gpu_shader5", wine_glUniform2i64NV },
19523   { "glUniform2i64vNV", "GL_NV_gpu_shader5", wine_glUniform2i64vNV },
19524   { "glUniform2iARB", "GL_ARB_shader_objects", wine_glUniform2iARB },
19525   { "glUniform2iv", "GL_VERSION_2_0", wine_glUniform2iv },
19526   { "glUniform2ivARB", "GL_ARB_shader_objects", wine_glUniform2ivARB },
19527   { "glUniform2ui", "GL_VERSION_3_0", wine_glUniform2ui },
19528   { "glUniform2ui64NV", "GL_NV_gpu_shader5", wine_glUniform2ui64NV },
19529   { "glUniform2ui64vNV", "GL_NV_gpu_shader5", wine_glUniform2ui64vNV },
19530   { "glUniform2uiEXT", "GL_EXT_gpu_shader4", wine_glUniform2uiEXT },
19531   { "glUniform2uiv", "GL_VERSION_3_0", wine_glUniform2uiv },
19532   { "glUniform2uivEXT", "GL_EXT_gpu_shader4", wine_glUniform2uivEXT },
19533   { "glUniform3d", "GL_ARB_gpu_shader_fp64", wine_glUniform3d },
19534   { "glUniform3dv", "GL_ARB_gpu_shader_fp64", wine_glUniform3dv },
19535   { "glUniform3f", "GL_VERSION_2_0", wine_glUniform3f },
19536   { "glUniform3fARB", "GL_ARB_shader_objects", wine_glUniform3fARB },
19537   { "glUniform3fv", "GL_VERSION_2_0", wine_glUniform3fv },
19538   { "glUniform3fvARB", "GL_ARB_shader_objects", wine_glUniform3fvARB },
19539   { "glUniform3i", "GL_VERSION_2_0", wine_glUniform3i },
19540   { "glUniform3i64NV", "GL_NV_gpu_shader5", wine_glUniform3i64NV },
19541   { "glUniform3i64vNV", "GL_NV_gpu_shader5", wine_glUniform3i64vNV },
19542   { "glUniform3iARB", "GL_ARB_shader_objects", wine_glUniform3iARB },
19543   { "glUniform3iv", "GL_VERSION_2_0", wine_glUniform3iv },
19544   { "glUniform3ivARB", "GL_ARB_shader_objects", wine_glUniform3ivARB },
19545   { "glUniform3ui", "GL_VERSION_3_0", wine_glUniform3ui },
19546   { "glUniform3ui64NV", "GL_NV_gpu_shader5", wine_glUniform3ui64NV },
19547   { "glUniform3ui64vNV", "GL_NV_gpu_shader5", wine_glUniform3ui64vNV },
19548   { "glUniform3uiEXT", "GL_EXT_gpu_shader4", wine_glUniform3uiEXT },
19549   { "glUniform3uiv", "GL_VERSION_3_0", wine_glUniform3uiv },
19550   { "glUniform3uivEXT", "GL_EXT_gpu_shader4", wine_glUniform3uivEXT },
19551   { "glUniform4d", "GL_ARB_gpu_shader_fp64", wine_glUniform4d },
19552   { "glUniform4dv", "GL_ARB_gpu_shader_fp64", wine_glUniform4dv },
19553   { "glUniform4f", "GL_VERSION_2_0", wine_glUniform4f },
19554   { "glUniform4fARB", "GL_ARB_shader_objects", wine_glUniform4fARB },
19555   { "glUniform4fv", "GL_VERSION_2_0", wine_glUniform4fv },
19556   { "glUniform4fvARB", "GL_ARB_shader_objects", wine_glUniform4fvARB },
19557   { "glUniform4i", "GL_VERSION_2_0", wine_glUniform4i },
19558   { "glUniform4i64NV", "GL_NV_gpu_shader5", wine_glUniform4i64NV },
19559   { "glUniform4i64vNV", "GL_NV_gpu_shader5", wine_glUniform4i64vNV },
19560   { "glUniform4iARB", "GL_ARB_shader_objects", wine_glUniform4iARB },
19561   { "glUniform4iv", "GL_VERSION_2_0", wine_glUniform4iv },
19562   { "glUniform4ivARB", "GL_ARB_shader_objects", wine_glUniform4ivARB },
19563   { "glUniform4ui", "GL_VERSION_3_0", wine_glUniform4ui },
19564   { "glUniform4ui64NV", "GL_NV_gpu_shader5", wine_glUniform4ui64NV },
19565   { "glUniform4ui64vNV", "GL_NV_gpu_shader5", wine_glUniform4ui64vNV },
19566   { "glUniform4uiEXT", "GL_EXT_gpu_shader4", wine_glUniform4uiEXT },
19567   { "glUniform4uiv", "GL_VERSION_3_0", wine_glUniform4uiv },
19568   { "glUniform4uivEXT", "GL_EXT_gpu_shader4", wine_glUniform4uivEXT },
19569   { "glUniformBlockBinding", "GL_ARB_uniform_buffer_object", wine_glUniformBlockBinding },
19570   { "glUniformBufferEXT", "GL_EXT_bindable_uniform", wine_glUniformBufferEXT },
19571   { "glUniformMatrix2dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix2dv },
19572   { "glUniformMatrix2fv", "GL_VERSION_2_0", wine_glUniformMatrix2fv },
19573   { "glUniformMatrix2fvARB", "GL_ARB_shader_objects", wine_glUniformMatrix2fvARB },
19574   { "glUniformMatrix2x3dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix2x3dv },
19575   { "glUniformMatrix2x3fv", "GL_VERSION_2_1", wine_glUniformMatrix2x3fv },
19576   { "glUniformMatrix2x4dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix2x4dv },
19577   { "glUniformMatrix2x4fv", "GL_VERSION_2_1", wine_glUniformMatrix2x4fv },
19578   { "glUniformMatrix3dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix3dv },
19579   { "glUniformMatrix3fv", "GL_VERSION_2_0", wine_glUniformMatrix3fv },
19580   { "glUniformMatrix3fvARB", "GL_ARB_shader_objects", wine_glUniformMatrix3fvARB },
19581   { "glUniformMatrix3x2dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix3x2dv },
19582   { "glUniformMatrix3x2fv", "GL_VERSION_2_1", wine_glUniformMatrix3x2fv },
19583   { "glUniformMatrix3x4dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix3x4dv },
19584   { "glUniformMatrix3x4fv", "GL_VERSION_2_1", wine_glUniformMatrix3x4fv },
19585   { "glUniformMatrix4dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix4dv },
19586   { "glUniformMatrix4fv", "GL_VERSION_2_0", wine_glUniformMatrix4fv },
19587   { "glUniformMatrix4fvARB", "GL_ARB_shader_objects", wine_glUniformMatrix4fvARB },
19588   { "glUniformMatrix4x2dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix4x2dv },
19589   { "glUniformMatrix4x2fv", "GL_VERSION_2_1", wine_glUniformMatrix4x2fv },
19590   { "glUniformMatrix4x3dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix4x3dv },
19591   { "glUniformMatrix4x3fv", "GL_VERSION_2_1", wine_glUniformMatrix4x3fv },
19592   { "glUniformSubroutinesuiv", "GL_ARB_shader_subroutine", wine_glUniformSubroutinesuiv },
19593   { "glUniformui64NV", "GL_NV_shader_buffer_load", wine_glUniformui64NV },
19594   { "glUniformui64vNV", "GL_NV_shader_buffer_load", wine_glUniformui64vNV },
19595   { "glUnlockArraysEXT", "GL_EXT_compiled_vertex_array", wine_glUnlockArraysEXT },
19596   { "glUnmapBuffer", "GL_VERSION_1_5", wine_glUnmapBuffer },
19597   { "glUnmapBufferARB", "GL_ARB_vertex_buffer_object", wine_glUnmapBufferARB },
19598   { "glUnmapNamedBufferEXT", "GL_EXT_direct_state_access", wine_glUnmapNamedBufferEXT },
19599   { "glUnmapObjectBufferATI", "GL_ATI_map_object_buffer", wine_glUnmapObjectBufferATI },
19600   { "glUpdateObjectBufferATI", "GL_ATI_vertex_array_object", wine_glUpdateObjectBufferATI },
19601   { "glUseProgram", "GL_VERSION_2_0", wine_glUseProgram },
19602   { "glUseProgramObjectARB", "GL_ARB_shader_objects", wine_glUseProgramObjectARB },
19603   { "glUseProgramStages", "GL_ARB_separate_shader_objects", wine_glUseProgramStages },
19604   { "glUseShaderProgramEXT", "GL_EXT_separate_shader_objects", wine_glUseShaderProgramEXT },
19605   { "glVDPAUFiniNV", "GL_NV_vdpau_interop", wine_glVDPAUFiniNV },
19606   { "glVDPAUGetSurfaceivNV", "GL_NV_vdpau_interop", wine_glVDPAUGetSurfaceivNV },
19607   { "glVDPAUInitNV", "GL_NV_vdpau_interop", wine_glVDPAUInitNV },
19608   { "glVDPAUIsSurfaceNV", "GL_NV_vdpau_interop", wine_glVDPAUIsSurfaceNV },
19609   { "glVDPAUMapSurfacesNV", "GL_NV_vdpau_interop", wine_glVDPAUMapSurfacesNV },
19610   { "glVDPAURegisterOutputSurfaceNV", "GL_NV_vdpau_interop", wine_glVDPAURegisterOutputSurfaceNV },
19611   { "glVDPAURegisterVideoSurfaceNV", "GL_NV_vdpau_interop", wine_glVDPAURegisterVideoSurfaceNV },
19612   { "glVDPAUSurfaceAccessNV", "GL_NV_vdpau_interop", wine_glVDPAUSurfaceAccessNV },
19613   { "glVDPAUUnmapSurfacesNV", "GL_NV_vdpau_interop", wine_glVDPAUUnmapSurfacesNV },
19614   { "glVDPAUUnregisterSurfaceNV", "GL_NV_vdpau_interop", wine_glVDPAUUnregisterSurfaceNV },
19615   { "glValidateProgram", "GL_VERSION_2_0", wine_glValidateProgram },
19616   { "glValidateProgramARB", "GL_ARB_shader_objects", wine_glValidateProgramARB },
19617   { "glValidateProgramPipeline", "GL_ARB_separate_shader_objects", wine_glValidateProgramPipeline },
19618   { "glVariantArrayObjectATI", "GL_ATI_vertex_array_object", wine_glVariantArrayObjectATI },
19619   { "glVariantPointerEXT", "GL_EXT_vertex_shader", wine_glVariantPointerEXT },
19620   { "glVariantbvEXT", "GL_EXT_vertex_shader", wine_glVariantbvEXT },
19621   { "glVariantdvEXT", "GL_EXT_vertex_shader", wine_glVariantdvEXT },
19622   { "glVariantfvEXT", "GL_EXT_vertex_shader", wine_glVariantfvEXT },
19623   { "glVariantivEXT", "GL_EXT_vertex_shader", wine_glVariantivEXT },
19624   { "glVariantsvEXT", "GL_EXT_vertex_shader", wine_glVariantsvEXT },
19625   { "glVariantubvEXT", "GL_EXT_vertex_shader", wine_glVariantubvEXT },
19626   { "glVariantuivEXT", "GL_EXT_vertex_shader", wine_glVariantuivEXT },
19627   { "glVariantusvEXT", "GL_EXT_vertex_shader", wine_glVariantusvEXT },
19628   { "glVertex2hNV", "GL_NV_half_float", wine_glVertex2hNV },
19629   { "glVertex2hvNV", "GL_NV_half_float", wine_glVertex2hvNV },
19630   { "glVertex3hNV", "GL_NV_half_float", wine_glVertex3hNV },
19631   { "glVertex3hvNV", "GL_NV_half_float", wine_glVertex3hvNV },
19632   { "glVertex4hNV", "GL_NV_half_float", wine_glVertex4hNV },
19633   { "glVertex4hvNV", "GL_NV_half_float", wine_glVertex4hvNV },
19634   { "glVertexArrayParameteriAPPLE", "GL_APPLE_vertex_array_range", wine_glVertexArrayParameteriAPPLE },
19635   { "glVertexArrayRangeAPPLE", "GL_APPLE_vertex_array_range", wine_glVertexArrayRangeAPPLE },
19636   { "glVertexArrayRangeNV", "GL_NV_vertex_array_range", wine_glVertexArrayRangeNV },
19637   { "glVertexArrayVertexAttribLOffsetEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexArrayVertexAttribLOffsetEXT },
19638   { "glVertexAttrib1d", "GL_VERSION_2_0", wine_glVertexAttrib1d },
19639   { "glVertexAttrib1dARB", "GL_ARB_vertex_program", wine_glVertexAttrib1dARB },
19640   { "glVertexAttrib1dNV", "GL_NV_vertex_program", wine_glVertexAttrib1dNV },
19641   { "glVertexAttrib1dv", "GL_VERSION_2_0", wine_glVertexAttrib1dv },
19642   { "glVertexAttrib1dvARB", "GL_ARB_vertex_program", wine_glVertexAttrib1dvARB },
19643   { "glVertexAttrib1dvNV", "GL_NV_vertex_program", wine_glVertexAttrib1dvNV },
19644   { "glVertexAttrib1f", "GL_VERSION_2_0", wine_glVertexAttrib1f },
19645   { "glVertexAttrib1fARB", "GL_ARB_vertex_program", wine_glVertexAttrib1fARB },
19646   { "glVertexAttrib1fNV", "GL_NV_vertex_program", wine_glVertexAttrib1fNV },
19647   { "glVertexAttrib1fv", "GL_VERSION_2_0", wine_glVertexAttrib1fv },
19648   { "glVertexAttrib1fvARB", "GL_ARB_vertex_program", wine_glVertexAttrib1fvARB },
19649   { "glVertexAttrib1fvNV", "GL_NV_vertex_program", wine_glVertexAttrib1fvNV },
19650   { "glVertexAttrib1hNV", "GL_NV_half_float", wine_glVertexAttrib1hNV },
19651   { "glVertexAttrib1hvNV", "GL_NV_half_float", wine_glVertexAttrib1hvNV },
19652   { "glVertexAttrib1s", "GL_VERSION_2_0", wine_glVertexAttrib1s },
19653   { "glVertexAttrib1sARB", "GL_ARB_vertex_program", wine_glVertexAttrib1sARB },
19654   { "glVertexAttrib1sNV", "GL_NV_vertex_program", wine_glVertexAttrib1sNV },
19655   { "glVertexAttrib1sv", "GL_VERSION_2_0", wine_glVertexAttrib1sv },
19656   { "glVertexAttrib1svARB", "GL_ARB_vertex_program", wine_glVertexAttrib1svARB },
19657   { "glVertexAttrib1svNV", "GL_NV_vertex_program", wine_glVertexAttrib1svNV },
19658   { "glVertexAttrib2d", "GL_VERSION_2_0", wine_glVertexAttrib2d },
19659   { "glVertexAttrib2dARB", "GL_ARB_vertex_program", wine_glVertexAttrib2dARB },
19660   { "glVertexAttrib2dNV", "GL_NV_vertex_program", wine_glVertexAttrib2dNV },
19661   { "glVertexAttrib2dv", "GL_VERSION_2_0", wine_glVertexAttrib2dv },
19662   { "glVertexAttrib2dvARB", "GL_ARB_vertex_program", wine_glVertexAttrib2dvARB },
19663   { "glVertexAttrib2dvNV", "GL_NV_vertex_program", wine_glVertexAttrib2dvNV },
19664   { "glVertexAttrib2f", "GL_VERSION_2_0", wine_glVertexAttrib2f },
19665   { "glVertexAttrib2fARB", "GL_ARB_vertex_program", wine_glVertexAttrib2fARB },
19666   { "glVertexAttrib2fNV", "GL_NV_vertex_program", wine_glVertexAttrib2fNV },
19667   { "glVertexAttrib2fv", "GL_VERSION_2_0", wine_glVertexAttrib2fv },
19668   { "glVertexAttrib2fvARB", "GL_ARB_vertex_program", wine_glVertexAttrib2fvARB },
19669   { "glVertexAttrib2fvNV", "GL_NV_vertex_program", wine_glVertexAttrib2fvNV },
19670   { "glVertexAttrib2hNV", "GL_NV_half_float", wine_glVertexAttrib2hNV },
19671   { "glVertexAttrib2hvNV", "GL_NV_half_float", wine_glVertexAttrib2hvNV },
19672   { "glVertexAttrib2s", "GL_VERSION_2_0", wine_glVertexAttrib2s },
19673   { "glVertexAttrib2sARB", "GL_ARB_vertex_program", wine_glVertexAttrib2sARB },
19674   { "glVertexAttrib2sNV", "GL_NV_vertex_program", wine_glVertexAttrib2sNV },
19675   { "glVertexAttrib2sv", "GL_VERSION_2_0", wine_glVertexAttrib2sv },
19676   { "glVertexAttrib2svARB", "GL_ARB_vertex_program", wine_glVertexAttrib2svARB },
19677   { "glVertexAttrib2svNV", "GL_NV_vertex_program", wine_glVertexAttrib2svNV },
19678   { "glVertexAttrib3d", "GL_VERSION_2_0", wine_glVertexAttrib3d },
19679   { "glVertexAttrib3dARB", "GL_ARB_vertex_program", wine_glVertexAttrib3dARB },
19680   { "glVertexAttrib3dNV", "GL_NV_vertex_program", wine_glVertexAttrib3dNV },
19681   { "glVertexAttrib3dv", "GL_VERSION_2_0", wine_glVertexAttrib3dv },
19682   { "glVertexAttrib3dvARB", "GL_ARB_vertex_program", wine_glVertexAttrib3dvARB },
19683   { "glVertexAttrib3dvNV", "GL_NV_vertex_program", wine_glVertexAttrib3dvNV },
19684   { "glVertexAttrib3f", "GL_VERSION_2_0", wine_glVertexAttrib3f },
19685   { "glVertexAttrib3fARB", "GL_ARB_vertex_program", wine_glVertexAttrib3fARB },
19686   { "glVertexAttrib3fNV", "GL_NV_vertex_program", wine_glVertexAttrib3fNV },
19687   { "glVertexAttrib3fv", "GL_VERSION_2_0", wine_glVertexAttrib3fv },
19688   { "glVertexAttrib3fvARB", "GL_ARB_vertex_program", wine_glVertexAttrib3fvARB },
19689   { "glVertexAttrib3fvNV", "GL_NV_vertex_program", wine_glVertexAttrib3fvNV },
19690   { "glVertexAttrib3hNV", "GL_NV_half_float", wine_glVertexAttrib3hNV },
19691   { "glVertexAttrib3hvNV", "GL_NV_half_float", wine_glVertexAttrib3hvNV },
19692   { "glVertexAttrib3s", "GL_VERSION_2_0", wine_glVertexAttrib3s },
19693   { "glVertexAttrib3sARB", "GL_ARB_vertex_program", wine_glVertexAttrib3sARB },
19694   { "glVertexAttrib3sNV", "GL_NV_vertex_program", wine_glVertexAttrib3sNV },
19695   { "glVertexAttrib3sv", "GL_VERSION_2_0", wine_glVertexAttrib3sv },
19696   { "glVertexAttrib3svARB", "GL_ARB_vertex_program", wine_glVertexAttrib3svARB },
19697   { "glVertexAttrib3svNV", "GL_NV_vertex_program", wine_glVertexAttrib3svNV },
19698   { "glVertexAttrib4Nbv", "GL_VERSION_2_0", wine_glVertexAttrib4Nbv },
19699   { "glVertexAttrib4NbvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NbvARB },
19700   { "glVertexAttrib4Niv", "GL_VERSION_2_0", wine_glVertexAttrib4Niv },
19701   { "glVertexAttrib4NivARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NivARB },
19702   { "glVertexAttrib4Nsv", "GL_VERSION_2_0", wine_glVertexAttrib4Nsv },
19703   { "glVertexAttrib4NsvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NsvARB },
19704   { "glVertexAttrib4Nub", "GL_VERSION_2_0", wine_glVertexAttrib4Nub },
19705   { "glVertexAttrib4NubARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NubARB },
19706   { "glVertexAttrib4Nubv", "GL_VERSION_2_0", wine_glVertexAttrib4Nubv },
19707   { "glVertexAttrib4NubvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NubvARB },
19708   { "glVertexAttrib4Nuiv", "GL_VERSION_2_0", wine_glVertexAttrib4Nuiv },
19709   { "glVertexAttrib4NuivARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NuivARB },
19710   { "glVertexAttrib4Nusv", "GL_VERSION_2_0", wine_glVertexAttrib4Nusv },
19711   { "glVertexAttrib4NusvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NusvARB },
19712   { "glVertexAttrib4bv", "GL_VERSION_2_0", wine_glVertexAttrib4bv },
19713   { "glVertexAttrib4bvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4bvARB },
19714   { "glVertexAttrib4d", "GL_VERSION_2_0", wine_glVertexAttrib4d },
19715   { "glVertexAttrib4dARB", "GL_ARB_vertex_program", wine_glVertexAttrib4dARB },
19716   { "glVertexAttrib4dNV", "GL_NV_vertex_program", wine_glVertexAttrib4dNV },
19717   { "glVertexAttrib4dv", "GL_VERSION_2_0", wine_glVertexAttrib4dv },
19718   { "glVertexAttrib4dvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4dvARB },
19719   { "glVertexAttrib4dvNV", "GL_NV_vertex_program", wine_glVertexAttrib4dvNV },
19720   { "glVertexAttrib4f", "GL_VERSION_2_0", wine_glVertexAttrib4f },
19721   { "glVertexAttrib4fARB", "GL_ARB_vertex_program", wine_glVertexAttrib4fARB },
19722   { "glVertexAttrib4fNV", "GL_NV_vertex_program", wine_glVertexAttrib4fNV },
19723   { "glVertexAttrib4fv", "GL_VERSION_2_0", wine_glVertexAttrib4fv },
19724   { "glVertexAttrib4fvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4fvARB },
19725   { "glVertexAttrib4fvNV", "GL_NV_vertex_program", wine_glVertexAttrib4fvNV },
19726   { "glVertexAttrib4hNV", "GL_NV_half_float", wine_glVertexAttrib4hNV },
19727   { "glVertexAttrib4hvNV", "GL_NV_half_float", wine_glVertexAttrib4hvNV },
19728   { "glVertexAttrib4iv", "GL_VERSION_2_0", wine_glVertexAttrib4iv },
19729   { "glVertexAttrib4ivARB", "GL_ARB_vertex_program", wine_glVertexAttrib4ivARB },
19730   { "glVertexAttrib4s", "GL_VERSION_2_0", wine_glVertexAttrib4s },
19731   { "glVertexAttrib4sARB", "GL_ARB_vertex_program", wine_glVertexAttrib4sARB },
19732   { "glVertexAttrib4sNV", "GL_NV_vertex_program", wine_glVertexAttrib4sNV },
19733   { "glVertexAttrib4sv", "GL_VERSION_2_0", wine_glVertexAttrib4sv },
19734   { "glVertexAttrib4svARB", "GL_ARB_vertex_program", wine_glVertexAttrib4svARB },
19735   { "glVertexAttrib4svNV", "GL_NV_vertex_program", wine_glVertexAttrib4svNV },
19736   { "glVertexAttrib4ubNV", "GL_NV_vertex_program", wine_glVertexAttrib4ubNV },
19737   { "glVertexAttrib4ubv", "GL_VERSION_2_0", wine_glVertexAttrib4ubv },
19738   { "glVertexAttrib4ubvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4ubvARB },
19739   { "glVertexAttrib4ubvNV", "GL_NV_vertex_program", wine_glVertexAttrib4ubvNV },
19740   { "glVertexAttrib4uiv", "GL_VERSION_2_0", wine_glVertexAttrib4uiv },
19741   { "glVertexAttrib4uivARB", "GL_ARB_vertex_program", wine_glVertexAttrib4uivARB },
19742   { "glVertexAttrib4usv", "GL_VERSION_2_0", wine_glVertexAttrib4usv },
19743   { "glVertexAttrib4usvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4usvARB },
19744   { "glVertexAttribArrayObjectATI", "GL_ATI_vertex_attrib_array_object", wine_glVertexAttribArrayObjectATI },
19745   { "glVertexAttribDivisor", "GL_VERSION_3_3", wine_glVertexAttribDivisor },
19746   { "glVertexAttribDivisorARB", "GL_ARB_instanced_arrays", wine_glVertexAttribDivisorARB },
19747   { "glVertexAttribFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glVertexAttribFormatNV },
19748   { "glVertexAttribI1i", "GL_VERSION_3_0", wine_glVertexAttribI1i },
19749   { "glVertexAttribI1iEXT", "GL_NV_vertex_program4", wine_glVertexAttribI1iEXT },
19750   { "glVertexAttribI1iv", "GL_VERSION_3_0", wine_glVertexAttribI1iv },
19751   { "glVertexAttribI1ivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI1ivEXT },
19752   { "glVertexAttribI1ui", "GL_VERSION_3_0", wine_glVertexAttribI1ui },
19753   { "glVertexAttribI1uiEXT", "GL_NV_vertex_program4", wine_glVertexAttribI1uiEXT },
19754   { "glVertexAttribI1uiv", "GL_VERSION_3_0", wine_glVertexAttribI1uiv },
19755   { "glVertexAttribI1uivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI1uivEXT },
19756   { "glVertexAttribI2i", "GL_VERSION_3_0", wine_glVertexAttribI2i },
19757   { "glVertexAttribI2iEXT", "GL_NV_vertex_program4", wine_glVertexAttribI2iEXT },
19758   { "glVertexAttribI2iv", "GL_VERSION_3_0", wine_glVertexAttribI2iv },
19759   { "glVertexAttribI2ivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI2ivEXT },
19760   { "glVertexAttribI2ui", "GL_VERSION_3_0", wine_glVertexAttribI2ui },
19761   { "glVertexAttribI2uiEXT", "GL_NV_vertex_program4", wine_glVertexAttribI2uiEXT },
19762   { "glVertexAttribI2uiv", "GL_VERSION_3_0", wine_glVertexAttribI2uiv },
19763   { "glVertexAttribI2uivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI2uivEXT },
19764   { "glVertexAttribI3i", "GL_VERSION_3_0", wine_glVertexAttribI3i },
19765   { "glVertexAttribI3iEXT", "GL_NV_vertex_program4", wine_glVertexAttribI3iEXT },
19766   { "glVertexAttribI3iv", "GL_VERSION_3_0", wine_glVertexAttribI3iv },
19767   { "glVertexAttribI3ivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI3ivEXT },
19768   { "glVertexAttribI3ui", "GL_VERSION_3_0", wine_glVertexAttribI3ui },
19769   { "glVertexAttribI3uiEXT", "GL_NV_vertex_program4", wine_glVertexAttribI3uiEXT },
19770   { "glVertexAttribI3uiv", "GL_VERSION_3_0", wine_glVertexAttribI3uiv },
19771   { "glVertexAttribI3uivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI3uivEXT },
19772   { "glVertexAttribI4bv", "GL_VERSION_3_0", wine_glVertexAttribI4bv },
19773   { "glVertexAttribI4bvEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4bvEXT },
19774   { "glVertexAttribI4i", "GL_VERSION_3_0", wine_glVertexAttribI4i },
19775   { "glVertexAttribI4iEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4iEXT },
19776   { "glVertexAttribI4iv", "GL_VERSION_3_0", wine_glVertexAttribI4iv },
19777   { "glVertexAttribI4ivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4ivEXT },
19778   { "glVertexAttribI4sv", "GL_VERSION_3_0", wine_glVertexAttribI4sv },
19779   { "glVertexAttribI4svEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4svEXT },
19780   { "glVertexAttribI4ubv", "GL_VERSION_3_0", wine_glVertexAttribI4ubv },
19781   { "glVertexAttribI4ubvEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4ubvEXT },
19782   { "glVertexAttribI4ui", "GL_VERSION_3_0", wine_glVertexAttribI4ui },
19783   { "glVertexAttribI4uiEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4uiEXT },
19784   { "glVertexAttribI4uiv", "GL_VERSION_3_0", wine_glVertexAttribI4uiv },
19785   { "glVertexAttribI4uivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4uivEXT },
19786   { "glVertexAttribI4usv", "GL_VERSION_3_0", wine_glVertexAttribI4usv },
19787   { "glVertexAttribI4usvEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4usvEXT },
19788   { "glVertexAttribIFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glVertexAttribIFormatNV },
19789   { "glVertexAttribIPointer", "GL_VERSION_3_0", wine_glVertexAttribIPointer },
19790   { "glVertexAttribIPointerEXT", "GL_NV_vertex_program4", wine_glVertexAttribIPointerEXT },
19791   { "glVertexAttribL1d", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL1d },
19792   { "glVertexAttribL1dEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL1dEXT },
19793   { "glVertexAttribL1dv", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL1dv },
19794   { "glVertexAttribL1dvEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL1dvEXT },
19795   { "glVertexAttribL1i64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL1i64NV },
19796   { "glVertexAttribL1i64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL1i64vNV },
19797   { "glVertexAttribL1ui64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL1ui64NV },
19798   { "glVertexAttribL1ui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL1ui64vNV },
19799   { "glVertexAttribL2d", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL2d },
19800   { "glVertexAttribL2dEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL2dEXT },
19801   { "glVertexAttribL2dv", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL2dv },
19802   { "glVertexAttribL2dvEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL2dvEXT },
19803   { "glVertexAttribL2i64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL2i64NV },
19804   { "glVertexAttribL2i64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL2i64vNV },
19805   { "glVertexAttribL2ui64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL2ui64NV },
19806   { "glVertexAttribL2ui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL2ui64vNV },
19807   { "glVertexAttribL3d", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL3d },
19808   { "glVertexAttribL3dEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL3dEXT },
19809   { "glVertexAttribL3dv", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL3dv },
19810   { "glVertexAttribL3dvEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL3dvEXT },
19811   { "glVertexAttribL3i64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL3i64NV },
19812   { "glVertexAttribL3i64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL3i64vNV },
19813   { "glVertexAttribL3ui64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL3ui64NV },
19814   { "glVertexAttribL3ui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL3ui64vNV },
19815   { "glVertexAttribL4d", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL4d },
19816   { "glVertexAttribL4dEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL4dEXT },
19817   { "glVertexAttribL4dv", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL4dv },
19818   { "glVertexAttribL4dvEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL4dvEXT },
19819   { "glVertexAttribL4i64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL4i64NV },
19820   { "glVertexAttribL4i64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL4i64vNV },
19821   { "glVertexAttribL4ui64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL4ui64NV },
19822   { "glVertexAttribL4ui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL4ui64vNV },
19823   { "glVertexAttribLFormatNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribLFormatNV },
19824   { "glVertexAttribLPointer", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribLPointer },
19825   { "glVertexAttribLPointerEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribLPointerEXT },
19826   { "glVertexAttribP1ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP1ui },
19827   { "glVertexAttribP1uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP1uiv },
19828   { "glVertexAttribP2ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP2ui },
19829   { "glVertexAttribP2uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP2uiv },
19830   { "glVertexAttribP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP3ui },
19831   { "glVertexAttribP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP3uiv },
19832   { "glVertexAttribP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP4ui },
19833   { "glVertexAttribP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP4uiv },
19834   { "glVertexAttribPointer", "GL_VERSION_2_0", wine_glVertexAttribPointer },
19835   { "glVertexAttribPointerARB", "GL_ARB_vertex_program", wine_glVertexAttribPointerARB },
19836   { "glVertexAttribPointerNV", "GL_NV_vertex_program", wine_glVertexAttribPointerNV },
19837   { "glVertexAttribs1dvNV", "GL_NV_vertex_program", wine_glVertexAttribs1dvNV },
19838   { "glVertexAttribs1fvNV", "GL_NV_vertex_program", wine_glVertexAttribs1fvNV },
19839   { "glVertexAttribs1hvNV", "GL_NV_half_float", wine_glVertexAttribs1hvNV },
19840   { "glVertexAttribs1svNV", "GL_NV_vertex_program", wine_glVertexAttribs1svNV },
19841   { "glVertexAttribs2dvNV", "GL_NV_vertex_program", wine_glVertexAttribs2dvNV },
19842   { "glVertexAttribs2fvNV", "GL_NV_vertex_program", wine_glVertexAttribs2fvNV },
19843   { "glVertexAttribs2hvNV", "GL_NV_half_float", wine_glVertexAttribs2hvNV },
19844   { "glVertexAttribs2svNV", "GL_NV_vertex_program", wine_glVertexAttribs2svNV },
19845   { "glVertexAttribs3dvNV", "GL_NV_vertex_program", wine_glVertexAttribs3dvNV },
19846   { "glVertexAttribs3fvNV", "GL_NV_vertex_program", wine_glVertexAttribs3fvNV },
19847   { "glVertexAttribs3hvNV", "GL_NV_half_float", wine_glVertexAttribs3hvNV },
19848   { "glVertexAttribs3svNV", "GL_NV_vertex_program", wine_glVertexAttribs3svNV },
19849   { "glVertexAttribs4dvNV", "GL_NV_vertex_program", wine_glVertexAttribs4dvNV },
19850   { "glVertexAttribs4fvNV", "GL_NV_vertex_program", wine_glVertexAttribs4fvNV },
19851   { "glVertexAttribs4hvNV", "GL_NV_half_float", wine_glVertexAttribs4hvNV },
19852   { "glVertexAttribs4svNV", "GL_NV_vertex_program", wine_glVertexAttribs4svNV },
19853   { "glVertexAttribs4ubvNV", "GL_NV_vertex_program", wine_glVertexAttribs4ubvNV },
19854   { "glVertexBlendARB", "GL_ARB_vertex_blend", wine_glVertexBlendARB },
19855   { "glVertexBlendEnvfATI", "GL_ATI_vertex_streams", wine_glVertexBlendEnvfATI },
19856   { "glVertexBlendEnviATI", "GL_ATI_vertex_streams", wine_glVertexBlendEnviATI },
19857   { "glVertexFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glVertexFormatNV },
19858   { "glVertexP2ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP2ui },
19859   { "glVertexP2uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP2uiv },
19860   { "glVertexP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP3ui },
19861   { "glVertexP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP3uiv },
19862   { "glVertexP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP4ui },
19863   { "glVertexP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP4uiv },
19864   { "glVertexPointerEXT", "GL_EXT_vertex_array", wine_glVertexPointerEXT },
19865   { "glVertexPointerListIBM", "GL_IBM_vertex_array_lists", wine_glVertexPointerListIBM },
19866   { "glVertexPointervINTEL", "GL_INTEL_parallel_arrays", wine_glVertexPointervINTEL },
19867   { "glVertexStream1dATI", "GL_ATI_vertex_streams", wine_glVertexStream1dATI },
19868   { "glVertexStream1dvATI", "GL_ATI_vertex_streams", wine_glVertexStream1dvATI },
19869   { "glVertexStream1fATI", "GL_ATI_vertex_streams", wine_glVertexStream1fATI },
19870   { "glVertexStream1fvATI", "GL_ATI_vertex_streams", wine_glVertexStream1fvATI },
19871   { "glVertexStream1iATI", "GL_ATI_vertex_streams", wine_glVertexStream1iATI },
19872   { "glVertexStream1ivATI", "GL_ATI_vertex_streams", wine_glVertexStream1ivATI },
19873   { "glVertexStream1sATI", "GL_ATI_vertex_streams", wine_glVertexStream1sATI },
19874   { "glVertexStream1svATI", "GL_ATI_vertex_streams", wine_glVertexStream1svATI },
19875   { "glVertexStream2dATI", "GL_ATI_vertex_streams", wine_glVertexStream2dATI },
19876   { "glVertexStream2dvATI", "GL_ATI_vertex_streams", wine_glVertexStream2dvATI },
19877   { "glVertexStream2fATI", "GL_ATI_vertex_streams", wine_glVertexStream2fATI },
19878   { "glVertexStream2fvATI", "GL_ATI_vertex_streams", wine_glVertexStream2fvATI },
19879   { "glVertexStream2iATI", "GL_ATI_vertex_streams", wine_glVertexStream2iATI },
19880   { "glVertexStream2ivATI", "GL_ATI_vertex_streams", wine_glVertexStream2ivATI },
19881   { "glVertexStream2sATI", "GL_ATI_vertex_streams", wine_glVertexStream2sATI },
19882   { "glVertexStream2svATI", "GL_ATI_vertex_streams", wine_glVertexStream2svATI },
19883   { "glVertexStream3dATI", "GL_ATI_vertex_streams", wine_glVertexStream3dATI },
19884   { "glVertexStream3dvATI", "GL_ATI_vertex_streams", wine_glVertexStream3dvATI },
19885   { "glVertexStream3fATI", "GL_ATI_vertex_streams", wine_glVertexStream3fATI },
19886   { "glVertexStream3fvATI", "GL_ATI_vertex_streams", wine_glVertexStream3fvATI },
19887   { "glVertexStream3iATI", "GL_ATI_vertex_streams", wine_glVertexStream3iATI },
19888   { "glVertexStream3ivATI", "GL_ATI_vertex_streams", wine_glVertexStream3ivATI },
19889   { "glVertexStream3sATI", "GL_ATI_vertex_streams", wine_glVertexStream3sATI },
19890   { "glVertexStream3svATI", "GL_ATI_vertex_streams", wine_glVertexStream3svATI },
19891   { "glVertexStream4dATI", "GL_ATI_vertex_streams", wine_glVertexStream4dATI },
19892   { "glVertexStream4dvATI", "GL_ATI_vertex_streams", wine_glVertexStream4dvATI },
19893   { "glVertexStream4fATI", "GL_ATI_vertex_streams", wine_glVertexStream4fATI },
19894   { "glVertexStream4fvATI", "GL_ATI_vertex_streams", wine_glVertexStream4fvATI },
19895   { "glVertexStream4iATI", "GL_ATI_vertex_streams", wine_glVertexStream4iATI },
19896   { "glVertexStream4ivATI", "GL_ATI_vertex_streams", wine_glVertexStream4ivATI },
19897   { "glVertexStream4sATI", "GL_ATI_vertex_streams", wine_glVertexStream4sATI },
19898   { "glVertexStream4svATI", "GL_ATI_vertex_streams", wine_glVertexStream4svATI },
19899   { "glVertexWeightPointerEXT", "GL_EXT_vertex_weighting", wine_glVertexWeightPointerEXT },
19900   { "glVertexWeightfEXT", "GL_EXT_vertex_weighting", wine_glVertexWeightfEXT },
19901   { "glVertexWeightfvEXT", "GL_EXT_vertex_weighting", wine_glVertexWeightfvEXT },
19902   { "glVertexWeighthNV", "GL_NV_half_float", wine_glVertexWeighthNV },
19903   { "glVertexWeighthvNV", "GL_NV_half_float", wine_glVertexWeighthvNV },
19904   { "glVideoCaptureNV", "GL_NV_video_capture", wine_glVideoCaptureNV },
19905   { "glVideoCaptureStreamParameterdvNV", "GL_NV_video_capture", wine_glVideoCaptureStreamParameterdvNV },
19906   { "glVideoCaptureStreamParameterfvNV", "GL_NV_video_capture", wine_glVideoCaptureStreamParameterfvNV },
19907   { "glVideoCaptureStreamParameterivNV", "GL_NV_video_capture", wine_glVideoCaptureStreamParameterivNV },
19908   { "glViewportArrayv", "GL_ARB_viewport_array", wine_glViewportArrayv },
19909   { "glViewportIndexedf", "GL_ARB_viewport_array", wine_glViewportIndexedf },
19910   { "glViewportIndexedfv", "GL_ARB_viewport_array", wine_glViewportIndexedfv },
19911   { "glWaitSync", "GL_ARB_sync", wine_glWaitSync },
19912   { "glWeightPointerARB", "GL_ARB_vertex_blend", wine_glWeightPointerARB },
19913   { "glWeightbvARB", "GL_ARB_vertex_blend", wine_glWeightbvARB },
19914   { "glWeightdvARB", "GL_ARB_vertex_blend", wine_glWeightdvARB },
19915   { "glWeightfvARB", "GL_ARB_vertex_blend", wine_glWeightfvARB },
19916   { "glWeightivARB", "GL_ARB_vertex_blend", wine_glWeightivARB },
19917   { "glWeightsvARB", "GL_ARB_vertex_blend", wine_glWeightsvARB },
19918   { "glWeightubvARB", "GL_ARB_vertex_blend", wine_glWeightubvARB },
19919   { "glWeightuivARB", "GL_ARB_vertex_blend", wine_glWeightuivARB },
19920   { "glWeightusvARB", "GL_ARB_vertex_blend", wine_glWeightusvARB },
19921   { "glWindowPos2d", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2d },
19922   { "glWindowPos2dARB", "GL_ARB_window_pos", wine_glWindowPos2dARB },
19923   { "glWindowPos2dMESA", "GL_MESA_window_pos", wine_glWindowPos2dMESA },
19924   { "glWindowPos2dv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2dv },
19925   { "glWindowPos2dvARB", "GL_ARB_window_pos", wine_glWindowPos2dvARB },
19926   { "glWindowPos2dvMESA", "GL_MESA_window_pos", wine_glWindowPos2dvMESA },
19927   { "glWindowPos2f", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2f },
19928   { "glWindowPos2fARB", "GL_ARB_window_pos", wine_glWindowPos2fARB },
19929   { "glWindowPos2fMESA", "GL_MESA_window_pos", wine_glWindowPos2fMESA },
19930   { "glWindowPos2fv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2fv },
19931   { "glWindowPos2fvARB", "GL_ARB_window_pos", wine_glWindowPos2fvARB },
19932   { "glWindowPos2fvMESA", "GL_MESA_window_pos", wine_glWindowPos2fvMESA },
19933   { "glWindowPos2i", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2i },
19934   { "glWindowPos2iARB", "GL_ARB_window_pos", wine_glWindowPos2iARB },
19935   { "glWindowPos2iMESA", "GL_MESA_window_pos", wine_glWindowPos2iMESA },
19936   { "glWindowPos2iv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2iv },
19937   { "glWindowPos2ivARB", "GL_ARB_window_pos", wine_glWindowPos2ivARB },
19938   { "glWindowPos2ivMESA", "GL_MESA_window_pos", wine_glWindowPos2ivMESA },
19939   { "glWindowPos2s", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2s },
19940   { "glWindowPos2sARB", "GL_ARB_window_pos", wine_glWindowPos2sARB },
19941   { "glWindowPos2sMESA", "GL_MESA_window_pos", wine_glWindowPos2sMESA },
19942   { "glWindowPos2sv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2sv },
19943   { "glWindowPos2svARB", "GL_ARB_window_pos", wine_glWindowPos2svARB },
19944   { "glWindowPos2svMESA", "GL_MESA_window_pos", wine_glWindowPos2svMESA },
19945   { "glWindowPos3d", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3d },
19946   { "glWindowPos3dARB", "GL_ARB_window_pos", wine_glWindowPos3dARB },
19947   { "glWindowPos3dMESA", "GL_MESA_window_pos", wine_glWindowPos3dMESA },
19948   { "glWindowPos3dv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3dv },
19949   { "glWindowPos3dvARB", "GL_ARB_window_pos", wine_glWindowPos3dvARB },
19950   { "glWindowPos3dvMESA", "GL_MESA_window_pos", wine_glWindowPos3dvMESA },
19951   { "glWindowPos3f", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3f },
19952   { "glWindowPos3fARB", "GL_ARB_window_pos", wine_glWindowPos3fARB },
19953   { "glWindowPos3fMESA", "GL_MESA_window_pos", wine_glWindowPos3fMESA },
19954   { "glWindowPos3fv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3fv },
19955   { "glWindowPos3fvARB", "GL_ARB_window_pos", wine_glWindowPos3fvARB },
19956   { "glWindowPos3fvMESA", "GL_MESA_window_pos", wine_glWindowPos3fvMESA },
19957   { "glWindowPos3i", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3i },
19958   { "glWindowPos3iARB", "GL_ARB_window_pos", wine_glWindowPos3iARB },
19959   { "glWindowPos3iMESA", "GL_MESA_window_pos", wine_glWindowPos3iMESA },
19960   { "glWindowPos3iv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3iv },
19961   { "glWindowPos3ivARB", "GL_ARB_window_pos", wine_glWindowPos3ivARB },
19962   { "glWindowPos3ivMESA", "GL_MESA_window_pos", wine_glWindowPos3ivMESA },
19963   { "glWindowPos3s", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3s },
19964   { "glWindowPos3sARB", "GL_ARB_window_pos", wine_glWindowPos3sARB },
19965   { "glWindowPos3sMESA", "GL_MESA_window_pos", wine_glWindowPos3sMESA },
19966   { "glWindowPos3sv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3sv },
19967   { "glWindowPos3svARB", "GL_ARB_window_pos", wine_glWindowPos3svARB },
19968   { "glWindowPos3svMESA", "GL_MESA_window_pos", wine_glWindowPos3svMESA },
19969   { "glWindowPos4dMESA", "GL_MESA_window_pos", wine_glWindowPos4dMESA },
19970   { "glWindowPos4dvMESA", "GL_MESA_window_pos", wine_glWindowPos4dvMESA },
19971   { "glWindowPos4fMESA", "GL_MESA_window_pos", wine_glWindowPos4fMESA },
19972   { "glWindowPos4fvMESA", "GL_MESA_window_pos", wine_glWindowPos4fvMESA },
19973   { "glWindowPos4iMESA", "GL_MESA_window_pos", wine_glWindowPos4iMESA },
19974   { "glWindowPos4ivMESA", "GL_MESA_window_pos", wine_glWindowPos4ivMESA },
19975   { "glWindowPos4sMESA", "GL_MESA_window_pos", wine_glWindowPos4sMESA },
19976   { "glWindowPos4svMESA", "GL_MESA_window_pos", wine_glWindowPos4svMESA },
19977   { "glWriteMaskEXT", "GL_EXT_vertex_shader", wine_glWriteMaskEXT }
19978 };