msvcrt/tests: Added more RTTI tests.
[wine] / dlls / opengl32 / opengl_ext.c
1
2 /* Auto-generated file... Do not edit ! */
3
4 #include "config.h"
5 #include <stdarg.h>
6 #include "opengl_ext.h"
7 #include "winternl.h"
8 #include "wingdi.h"
9 #define WGL_WGLEXT_PROTOTYPES
10 #include "wine/wglext.h"
11 #include "wine/wgl_driver.h"
12 #include "wine/debug.h"
13
14 WINE_DEFAULT_DEBUG_CHANNEL(opengl);
15
16 const int extension_registry_size = 2141;
17
18 static void WINAPI wine_glActiveProgramEXT( GLuint program ) {
19   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
20   TRACE("(%d)\n", program );
21   funcs->ext.p_glActiveProgramEXT( program );
22 }
23
24 static void WINAPI wine_glActiveShaderProgram( GLuint pipeline, GLuint program ) {
25   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
26   TRACE("(%d, %d)\n", pipeline, program );
27   funcs->ext.p_glActiveShaderProgram( pipeline, program );
28 }
29
30 static void WINAPI wine_glActiveStencilFaceEXT( GLenum face ) {
31   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
32   TRACE("(%d)\n", face );
33   funcs->ext.p_glActiveStencilFaceEXT( face );
34 }
35
36 static void WINAPI wine_glActiveTexture( GLenum texture ) {
37   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
38   TRACE("(%d)\n", texture );
39   funcs->ext.p_glActiveTexture( texture );
40 }
41
42 static void WINAPI wine_glActiveTextureARB( GLenum texture ) {
43   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
44   TRACE("(%d)\n", texture );
45   funcs->ext.p_glActiveTextureARB( texture );
46 }
47
48 static void WINAPI wine_glActiveVaryingNV( GLuint program, const char* name ) {
49   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
50   TRACE("(%d, %p)\n", program, name );
51   funcs->ext.p_glActiveVaryingNV( program, name );
52 }
53
54 static void WINAPI wine_glAlphaFragmentOp1ATI( GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod ) {
55   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
56   TRACE("(%d, %d, %d, %d, %d, %d)\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod );
57   funcs->ext.p_glAlphaFragmentOp1ATI( op, dst, dstMod, arg1, arg1Rep, arg1Mod );
58 }
59
60 static void WINAPI wine_glAlphaFragmentOp2ATI( GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod ) {
61   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
62   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod );
63   funcs->ext.p_glAlphaFragmentOp2ATI( op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod );
64 }
65
66 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 ) {
67   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
68   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 );
69   funcs->ext.p_glAlphaFragmentOp3ATI( op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod );
70 }
71
72 static void WINAPI wine_glApplyTextureEXT( GLenum mode ) {
73   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
74   TRACE("(%d)\n", mode );
75   funcs->ext.p_glApplyTextureEXT( mode );
76 }
77
78 static GLboolean WINAPI wine_glAreProgramsResidentNV( GLsizei n, const GLuint* programs, GLboolean* residences ) {
79   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
80   TRACE("(%d, %p, %p)\n", n, programs, residences );
81   return funcs->ext.p_glAreProgramsResidentNV( n, programs, residences );
82 }
83
84 static GLboolean WINAPI wine_glAreTexturesResidentEXT( GLsizei n, const GLuint* textures, GLboolean* residences ) {
85   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
86   TRACE("(%d, %p, %p)\n", n, textures, residences );
87   return funcs->ext.p_glAreTexturesResidentEXT( n, textures, residences );
88 }
89
90 static void WINAPI wine_glArrayElementEXT( GLint i ) {
91   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
92   TRACE("(%d)\n", i );
93   funcs->ext.p_glArrayElementEXT( i );
94 }
95
96 static void WINAPI wine_glArrayObjectATI( GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset ) {
97   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
98   TRACE("(%d, %d, %d, %d, %d, %d)\n", array, size, type, stride, buffer, offset );
99   funcs->ext.p_glArrayObjectATI( array, size, type, stride, buffer, offset );
100 }
101
102 static void WINAPI wine_glAsyncMarkerSGIX( GLuint marker ) {
103   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
104   TRACE("(%d)\n", marker );
105   funcs->ext.p_glAsyncMarkerSGIX( marker );
106 }
107
108 static void WINAPI wine_glAttachObjectARB( unsigned int containerObj, unsigned int obj ) {
109   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
110   TRACE("(%d, %d)\n", containerObj, obj );
111   funcs->ext.p_glAttachObjectARB( containerObj, obj );
112 }
113
114 static void WINAPI wine_glAttachShader( GLuint program, GLuint shader ) {
115   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
116   TRACE("(%d, %d)\n", program, shader );
117   funcs->ext.p_glAttachShader( program, shader );
118 }
119
120 static void WINAPI wine_glBeginConditionalRender( GLuint id, GLenum mode ) {
121   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
122   TRACE("(%d, %d)\n", id, mode );
123   funcs->ext.p_glBeginConditionalRender( id, mode );
124 }
125
126 static void WINAPI wine_glBeginConditionalRenderNV( GLuint id, GLenum mode ) {
127   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
128   TRACE("(%d, %d)\n", id, mode );
129   funcs->ext.p_glBeginConditionalRenderNV( id, mode );
130 }
131
132 static void WINAPI wine_glBeginFragmentShaderATI( void ) {
133   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
134   TRACE("()\n");
135   funcs->ext.p_glBeginFragmentShaderATI( );
136 }
137
138 static void WINAPI wine_glBeginOcclusionQueryNV( GLuint id ) {
139   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
140   TRACE("(%d)\n", id );
141   funcs->ext.p_glBeginOcclusionQueryNV( id );
142 }
143
144 static void WINAPI wine_glBeginPerfMonitorAMD( GLuint monitor ) {
145   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
146   TRACE("(%d)\n", monitor );
147   funcs->ext.p_glBeginPerfMonitorAMD( monitor );
148 }
149
150 static void WINAPI wine_glBeginQuery( GLenum target, GLuint id ) {
151   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
152   TRACE("(%d, %d)\n", target, id );
153   funcs->ext.p_glBeginQuery( target, id );
154 }
155
156 static void WINAPI wine_glBeginQueryARB( GLenum target, GLuint id ) {
157   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
158   TRACE("(%d, %d)\n", target, id );
159   funcs->ext.p_glBeginQueryARB( target, id );
160 }
161
162 static void WINAPI wine_glBeginQueryIndexed( GLenum target, GLuint index, GLuint id ) {
163   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
164   TRACE("(%d, %d, %d)\n", target, index, id );
165   funcs->ext.p_glBeginQueryIndexed( target, index, id );
166 }
167
168 static void WINAPI wine_glBeginTransformFeedback( GLenum primitiveMode ) {
169   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
170   TRACE("(%d)\n", primitiveMode );
171   funcs->ext.p_glBeginTransformFeedback( primitiveMode );
172 }
173
174 static void WINAPI wine_glBeginTransformFeedbackEXT( GLenum primitiveMode ) {
175   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
176   TRACE("(%d)\n", primitiveMode );
177   funcs->ext.p_glBeginTransformFeedbackEXT( primitiveMode );
178 }
179
180 static void WINAPI wine_glBeginTransformFeedbackNV( GLenum primitiveMode ) {
181   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
182   TRACE("(%d)\n", primitiveMode );
183   funcs->ext.p_glBeginTransformFeedbackNV( primitiveMode );
184 }
185
186 static void WINAPI wine_glBeginVertexShaderEXT( void ) {
187   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
188   TRACE("()\n");
189   funcs->ext.p_glBeginVertexShaderEXT( );
190 }
191
192 static void WINAPI wine_glBeginVideoCaptureNV( GLuint video_capture_slot ) {
193   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
194   TRACE("(%d)\n", video_capture_slot );
195   funcs->ext.p_glBeginVideoCaptureNV( video_capture_slot );
196 }
197
198 static void WINAPI wine_glBindAttribLocation( GLuint program, GLuint index, const char* name ) {
199   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
200   TRACE("(%d, %d, %p)\n", program, index, name );
201   funcs->ext.p_glBindAttribLocation( program, index, name );
202 }
203
204 static void WINAPI wine_glBindAttribLocationARB( unsigned int programObj, GLuint index, const char* name ) {
205   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
206   TRACE("(%d, %d, %p)\n", programObj, index, name );
207   funcs->ext.p_glBindAttribLocationARB( programObj, index, name );
208 }
209
210 static void WINAPI wine_glBindBuffer( GLenum target, GLuint buffer ) {
211   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
212   TRACE("(%d, %d)\n", target, buffer );
213   funcs->ext.p_glBindBuffer( target, buffer );
214 }
215
216 static void WINAPI wine_glBindBufferARB( GLenum target, GLuint buffer ) {
217   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
218   TRACE("(%d, %d)\n", target, buffer );
219   funcs->ext.p_glBindBufferARB( target, buffer );
220 }
221
222 static void WINAPI wine_glBindBufferBase( GLenum target, GLuint index, GLuint buffer ) {
223   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
224   TRACE("(%d, %d, %d)\n", target, index, buffer );
225   funcs->ext.p_glBindBufferBase( target, index, buffer );
226 }
227
228 static void WINAPI wine_glBindBufferBaseEXT( GLenum target, GLuint index, GLuint buffer ) {
229   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
230   TRACE("(%d, %d, %d)\n", target, index, buffer );
231   funcs->ext.p_glBindBufferBaseEXT( target, index, buffer );
232 }
233
234 static void WINAPI wine_glBindBufferBaseNV( GLenum target, GLuint index, GLuint buffer ) {
235   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
236   TRACE("(%d, %d, %d)\n", target, index, buffer );
237   funcs->ext.p_glBindBufferBaseNV( target, index, buffer );
238 }
239
240 static void WINAPI wine_glBindBufferOffsetEXT( GLenum target, GLuint index, GLuint buffer, INT_PTR offset ) {
241   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
242   TRACE("(%d, %d, %d, %ld)\n", target, index, buffer, offset );
243   funcs->ext.p_glBindBufferOffsetEXT( target, index, buffer, offset );
244 }
245
246 static void WINAPI wine_glBindBufferOffsetNV( GLenum target, GLuint index, GLuint buffer, INT_PTR offset ) {
247   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
248   TRACE("(%d, %d, %d, %ld)\n", target, index, buffer, offset );
249   funcs->ext.p_glBindBufferOffsetNV( target, index, buffer, offset );
250 }
251
252 static void WINAPI wine_glBindBufferRange( GLenum target, GLuint index, GLuint buffer, INT_PTR offset, INT_PTR size ) {
253   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
254   TRACE("(%d, %d, %d, %ld, %ld)\n", target, index, buffer, offset, size );
255   funcs->ext.p_glBindBufferRange( target, index, buffer, offset, size );
256 }
257
258 static void WINAPI wine_glBindBufferRangeEXT( GLenum target, GLuint index, GLuint buffer, INT_PTR offset, INT_PTR size ) {
259   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
260   TRACE("(%d, %d, %d, %ld, %ld)\n", target, index, buffer, offset, size );
261   funcs->ext.p_glBindBufferRangeEXT( target, index, buffer, offset, size );
262 }
263
264 static void WINAPI wine_glBindBufferRangeNV( GLenum target, GLuint index, GLuint buffer, INT_PTR offset, INT_PTR size ) {
265   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
266   TRACE("(%d, %d, %d, %ld, %ld)\n", target, index, buffer, offset, size );
267   funcs->ext.p_glBindBufferRangeNV( target, index, buffer, offset, size );
268 }
269
270 static void WINAPI wine_glBindFragDataLocation( GLuint program, GLuint color, const char* name ) {
271   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
272   TRACE("(%d, %d, %p)\n", program, color, name );
273   funcs->ext.p_glBindFragDataLocation( program, color, name );
274 }
275
276 static void WINAPI wine_glBindFragDataLocationEXT( GLuint program, GLuint color, const char* name ) {
277   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
278   TRACE("(%d, %d, %p)\n", program, color, name );
279   funcs->ext.p_glBindFragDataLocationEXT( program, color, name );
280 }
281
282 static void WINAPI wine_glBindFragDataLocationIndexed( GLuint program, GLuint colorNumber, GLuint index, const char* name ) {
283   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
284   TRACE("(%d, %d, %d, %p)\n", program, colorNumber, index, name );
285   funcs->ext.p_glBindFragDataLocationIndexed( program, colorNumber, index, name );
286 }
287
288 static void WINAPI wine_glBindFragmentShaderATI( GLuint id ) {
289   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
290   TRACE("(%d)\n", id );
291   funcs->ext.p_glBindFragmentShaderATI( id );
292 }
293
294 static void WINAPI wine_glBindFramebuffer( GLenum target, GLuint framebuffer ) {
295   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
296   TRACE("(%d, %d)\n", target, framebuffer );
297   funcs->ext.p_glBindFramebuffer( target, framebuffer );
298 }
299
300 static void WINAPI wine_glBindFramebufferEXT( GLenum target, GLuint framebuffer ) {
301   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
302   TRACE("(%d, %d)\n", target, framebuffer );
303   funcs->ext.p_glBindFramebufferEXT( target, framebuffer );
304 }
305
306 static void WINAPI wine_glBindImageTexture( GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format ) {
307   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
308   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", unit, texture, level, layered, layer, access, format );
309   funcs->ext.p_glBindImageTexture( unit, texture, level, layered, layer, access, format );
310 }
311
312 static void WINAPI wine_glBindImageTextureEXT( GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format ) {
313   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
314   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", index, texture, level, layered, layer, access, format );
315   funcs->ext.p_glBindImageTextureEXT( index, texture, level, layered, layer, access, format );
316 }
317
318 static GLuint WINAPI wine_glBindLightParameterEXT( GLenum light, GLenum value ) {
319   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
320   TRACE("(%d, %d)\n", light, value );
321   return funcs->ext.p_glBindLightParameterEXT( light, value );
322 }
323
324 static GLuint WINAPI wine_glBindMaterialParameterEXT( GLenum face, GLenum value ) {
325   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
326   TRACE("(%d, %d)\n", face, value );
327   return funcs->ext.p_glBindMaterialParameterEXT( face, value );
328 }
329
330 static void WINAPI wine_glBindMultiTextureEXT( GLenum texunit, GLenum target, GLuint texture ) {
331   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
332   TRACE("(%d, %d, %d)\n", texunit, target, texture );
333   funcs->ext.p_glBindMultiTextureEXT( texunit, target, texture );
334 }
335
336 static GLuint WINAPI wine_glBindParameterEXT( GLenum value ) {
337   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
338   TRACE("(%d)\n", value );
339   return funcs->ext.p_glBindParameterEXT( value );
340 }
341
342 static void WINAPI wine_glBindProgramARB( GLenum target, GLuint program ) {
343   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
344   TRACE("(%d, %d)\n", target, program );
345   funcs->ext.p_glBindProgramARB( target, program );
346 }
347
348 static void WINAPI wine_glBindProgramNV( GLenum target, GLuint id ) {
349   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
350   TRACE("(%d, %d)\n", target, id );
351   funcs->ext.p_glBindProgramNV( target, id );
352 }
353
354 static void WINAPI wine_glBindProgramPipeline( GLuint pipeline ) {
355   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
356   TRACE("(%d)\n", pipeline );
357   funcs->ext.p_glBindProgramPipeline( pipeline );
358 }
359
360 static void WINAPI wine_glBindRenderbuffer( GLenum target, GLuint renderbuffer ) {
361   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
362   TRACE("(%d, %d)\n", target, renderbuffer );
363   funcs->ext.p_glBindRenderbuffer( target, renderbuffer );
364 }
365
366 static void WINAPI wine_glBindRenderbufferEXT( GLenum target, GLuint renderbuffer ) {
367   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
368   TRACE("(%d, %d)\n", target, renderbuffer );
369   funcs->ext.p_glBindRenderbufferEXT( target, renderbuffer );
370 }
371
372 static void WINAPI wine_glBindSampler( GLuint unit, GLuint sampler ) {
373   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
374   TRACE("(%d, %d)\n", unit, sampler );
375   funcs->ext.p_glBindSampler( unit, sampler );
376 }
377
378 static GLuint WINAPI wine_glBindTexGenParameterEXT( GLenum unit, GLenum coord, GLenum value ) {
379   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
380   TRACE("(%d, %d, %d)\n", unit, coord, value );
381   return funcs->ext.p_glBindTexGenParameterEXT( unit, coord, value );
382 }
383
384 static void WINAPI wine_glBindTextureEXT( GLenum target, GLuint texture ) {
385   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
386   TRACE("(%d, %d)\n", target, texture );
387   funcs->ext.p_glBindTextureEXT( target, texture );
388 }
389
390 static GLuint WINAPI wine_glBindTextureUnitParameterEXT( GLenum unit, GLenum value ) {
391   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
392   TRACE("(%d, %d)\n", unit, value );
393   return funcs->ext.p_glBindTextureUnitParameterEXT( unit, value );
394 }
395
396 static void WINAPI wine_glBindTransformFeedback( GLenum target, GLuint id ) {
397   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
398   TRACE("(%d, %d)\n", target, id );
399   funcs->ext.p_glBindTransformFeedback( target, id );
400 }
401
402 static void WINAPI wine_glBindTransformFeedbackNV( GLenum target, GLuint id ) {
403   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
404   TRACE("(%d, %d)\n", target, id );
405   funcs->ext.p_glBindTransformFeedbackNV( target, id );
406 }
407
408 static void WINAPI wine_glBindVertexArray( GLuint array ) {
409   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
410   TRACE("(%d)\n", array );
411   funcs->ext.p_glBindVertexArray( array );
412 }
413
414 static void WINAPI wine_glBindVertexArrayAPPLE( GLuint array ) {
415   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
416   TRACE("(%d)\n", array );
417   funcs->ext.p_glBindVertexArrayAPPLE( array );
418 }
419
420 static void WINAPI wine_glBindVertexBuffer( GLuint bindingindex, GLuint buffer, INT_PTR offset, GLsizei stride ) {
421   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
422   TRACE("(%d, %d, %ld, %d)\n", bindingindex, buffer, offset, stride );
423   funcs->ext.p_glBindVertexBuffer( bindingindex, buffer, offset, stride );
424 }
425
426 static void WINAPI wine_glBindVertexShaderEXT( GLuint id ) {
427   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
428   TRACE("(%d)\n", id );
429   funcs->ext.p_glBindVertexShaderEXT( id );
430 }
431
432 static void WINAPI wine_glBindVideoCaptureStreamBufferNV( GLuint video_capture_slot, GLuint stream, GLenum frame_region, INT_PTR offset ) {
433   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
434   TRACE("(%d, %d, %d, %ld)\n", video_capture_slot, stream, frame_region, offset );
435   funcs->ext.p_glBindVideoCaptureStreamBufferNV( video_capture_slot, stream, frame_region, offset );
436 }
437
438 static void WINAPI wine_glBindVideoCaptureStreamTextureNV( GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture ) {
439   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
440   TRACE("(%d, %d, %d, %d, %d)\n", video_capture_slot, stream, frame_region, target, texture );
441   funcs->ext.p_glBindVideoCaptureStreamTextureNV( video_capture_slot, stream, frame_region, target, texture );
442 }
443
444 static void WINAPI wine_glBinormal3bEXT( GLbyte bx, GLbyte by, GLbyte bz ) {
445   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
446   TRACE("(%d, %d, %d)\n", bx, by, bz );
447   funcs->ext.p_glBinormal3bEXT( bx, by, bz );
448 }
449
450 static void WINAPI wine_glBinormal3bvEXT( const GLbyte* v ) {
451   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
452   TRACE("(%p)\n", v );
453   funcs->ext.p_glBinormal3bvEXT( v );
454 }
455
456 static void WINAPI wine_glBinormal3dEXT( GLdouble bx, GLdouble by, GLdouble bz ) {
457   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
458   TRACE("(%f, %f, %f)\n", bx, by, bz );
459   funcs->ext.p_glBinormal3dEXT( bx, by, bz );
460 }
461
462 static void WINAPI wine_glBinormal3dvEXT( const GLdouble* v ) {
463   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
464   TRACE("(%p)\n", v );
465   funcs->ext.p_glBinormal3dvEXT( v );
466 }
467
468 static void WINAPI wine_glBinormal3fEXT( GLfloat bx, GLfloat by, GLfloat bz ) {
469   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
470   TRACE("(%f, %f, %f)\n", bx, by, bz );
471   funcs->ext.p_glBinormal3fEXT( bx, by, bz );
472 }
473
474 static void WINAPI wine_glBinormal3fvEXT( const GLfloat* v ) {
475   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
476   TRACE("(%p)\n", v );
477   funcs->ext.p_glBinormal3fvEXT( v );
478 }
479
480 static void WINAPI wine_glBinormal3iEXT( GLint bx, GLint by, GLint bz ) {
481   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
482   TRACE("(%d, %d, %d)\n", bx, by, bz );
483   funcs->ext.p_glBinormal3iEXT( bx, by, bz );
484 }
485
486 static void WINAPI wine_glBinormal3ivEXT( const GLint* v ) {
487   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
488   TRACE("(%p)\n", v );
489   funcs->ext.p_glBinormal3ivEXT( v );
490 }
491
492 static void WINAPI wine_glBinormal3sEXT( GLshort bx, GLshort by, GLshort bz ) {
493   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
494   TRACE("(%d, %d, %d)\n", bx, by, bz );
495   funcs->ext.p_glBinormal3sEXT( bx, by, bz );
496 }
497
498 static void WINAPI wine_glBinormal3svEXT( const GLshort* v ) {
499   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
500   TRACE("(%p)\n", v );
501   funcs->ext.p_glBinormal3svEXT( v );
502 }
503
504 static void WINAPI wine_glBinormalPointerEXT( GLenum type, GLsizei stride, const GLvoid* pointer ) {
505   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
506   TRACE("(%d, %d, %p)\n", type, stride, pointer );
507   funcs->ext.p_glBinormalPointerEXT( type, stride, pointer );
508 }
509
510 static void WINAPI wine_glBlendColor( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) {
511   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
512   TRACE("(%f, %f, %f, %f)\n", red, green, blue, alpha );
513   funcs->ext.p_glBlendColor( red, green, blue, alpha );
514 }
515
516 static void WINAPI wine_glBlendColorEXT( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) {
517   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
518   TRACE("(%f, %f, %f, %f)\n", red, green, blue, alpha );
519   funcs->ext.p_glBlendColorEXT( red, green, blue, alpha );
520 }
521
522 static void WINAPI wine_glBlendEquation( GLenum mode ) {
523   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
524   TRACE("(%d)\n", mode );
525   funcs->ext.p_glBlendEquation( mode );
526 }
527
528 static void WINAPI wine_glBlendEquationEXT( GLenum mode ) {
529   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
530   TRACE("(%d)\n", mode );
531   funcs->ext.p_glBlendEquationEXT( mode );
532 }
533
534 static void WINAPI wine_glBlendEquationIndexedAMD( GLuint buf, GLenum mode ) {
535   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
536   TRACE("(%d, %d)\n", buf, mode );
537   funcs->ext.p_glBlendEquationIndexedAMD( buf, mode );
538 }
539
540 static void WINAPI wine_glBlendEquationSeparate( GLenum modeRGB, GLenum modeAlpha ) {
541   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
542   TRACE("(%d, %d)\n", modeRGB, modeAlpha );
543   funcs->ext.p_glBlendEquationSeparate( modeRGB, modeAlpha );
544 }
545
546 static void WINAPI wine_glBlendEquationSeparateEXT( GLenum modeRGB, GLenum modeAlpha ) {
547   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
548   TRACE("(%d, %d)\n", modeRGB, modeAlpha );
549   funcs->ext.p_glBlendEquationSeparateEXT( modeRGB, modeAlpha );
550 }
551
552 static void WINAPI wine_glBlendEquationSeparateIndexedAMD( GLuint buf, GLenum modeRGB, GLenum modeAlpha ) {
553   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
554   TRACE("(%d, %d, %d)\n", buf, modeRGB, modeAlpha );
555   funcs->ext.p_glBlendEquationSeparateIndexedAMD( buf, modeRGB, modeAlpha );
556 }
557
558 static void WINAPI wine_glBlendEquationSeparatei( GLuint buf, GLenum modeRGB, GLenum modeAlpha ) {
559   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
560   TRACE("(%d, %d, %d)\n", buf, modeRGB, modeAlpha );
561   funcs->ext.p_glBlendEquationSeparatei( buf, modeRGB, modeAlpha );
562 }
563
564 static void WINAPI wine_glBlendEquationSeparateiARB( GLuint buf, GLenum modeRGB, GLenum modeAlpha ) {
565   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
566   TRACE("(%d, %d, %d)\n", buf, modeRGB, modeAlpha );
567   funcs->ext.p_glBlendEquationSeparateiARB( buf, modeRGB, modeAlpha );
568 }
569
570 static void WINAPI wine_glBlendEquationi( GLuint buf, GLenum mode ) {
571   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
572   TRACE("(%d, %d)\n", buf, mode );
573   funcs->ext.p_glBlendEquationi( buf, mode );
574 }
575
576 static void WINAPI wine_glBlendEquationiARB( GLuint buf, GLenum mode ) {
577   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
578   TRACE("(%d, %d)\n", buf, mode );
579   funcs->ext.p_glBlendEquationiARB( buf, mode );
580 }
581
582 static void WINAPI wine_glBlendFuncIndexedAMD( GLuint buf, GLenum src, GLenum dst ) {
583   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
584   TRACE("(%d, %d, %d)\n", buf, src, dst );
585   funcs->ext.p_glBlendFuncIndexedAMD( buf, src, dst );
586 }
587
588 static void WINAPI wine_glBlendFuncSeparate( GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha ) {
589   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
590   TRACE("(%d, %d, %d, %d)\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
591   funcs->ext.p_glBlendFuncSeparate( sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
592 }
593
594 static void WINAPI wine_glBlendFuncSeparateEXT( GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha ) {
595   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
596   TRACE("(%d, %d, %d, %d)\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
597   funcs->ext.p_glBlendFuncSeparateEXT( sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
598 }
599
600 static void WINAPI wine_glBlendFuncSeparateINGR( GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha ) {
601   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
602   TRACE("(%d, %d, %d, %d)\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
603   funcs->ext.p_glBlendFuncSeparateINGR( sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha );
604 }
605
606 static void WINAPI wine_glBlendFuncSeparateIndexedAMD( GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) {
607   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
608   TRACE("(%d, %d, %d, %d, %d)\n", buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
609   funcs->ext.p_glBlendFuncSeparateIndexedAMD( buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
610 }
611
612 static void WINAPI wine_glBlendFuncSeparatei( GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) {
613   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
614   TRACE("(%d, %d, %d, %d, %d)\n", buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
615   funcs->ext.p_glBlendFuncSeparatei( buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
616 }
617
618 static void WINAPI wine_glBlendFuncSeparateiARB( GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) {
619   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
620   TRACE("(%d, %d, %d, %d, %d)\n", buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
621   funcs->ext.p_glBlendFuncSeparateiARB( buf, srcRGB, dstRGB, srcAlpha, dstAlpha );
622 }
623
624 static void WINAPI wine_glBlendFunci( GLuint buf, GLenum src, GLenum dst ) {
625   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
626   TRACE("(%d, %d, %d)\n", buf, src, dst );
627   funcs->ext.p_glBlendFunci( buf, src, dst );
628 }
629
630 static void WINAPI wine_glBlendFunciARB( GLuint buf, GLenum src, GLenum dst ) {
631   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
632   TRACE("(%d, %d, %d)\n", buf, src, dst );
633   funcs->ext.p_glBlendFunciARB( buf, src, dst );
634 }
635
636 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 ) {
637   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
638   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
639   funcs->ext.p_glBlitFramebuffer( srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
640 }
641
642 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 ) {
643   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
644   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
645   funcs->ext.p_glBlitFramebufferEXT( srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
646 }
647
648 static void WINAPI wine_glBufferAddressRangeNV( GLenum pname, GLuint index, UINT64 address, INT_PTR length ) {
649   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
650   TRACE("(%d, %d, %s, %ld)\n", pname, index, wine_dbgstr_longlong(address), length );
651   funcs->ext.p_glBufferAddressRangeNV( pname, index, address, length );
652 }
653
654 static void WINAPI wine_glBufferData( GLenum target, INT_PTR size, const GLvoid* data, GLenum usage ) {
655   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
656   TRACE("(%d, %ld, %p, %d)\n", target, size, data, usage );
657   funcs->ext.p_glBufferData( target, size, data, usage );
658 }
659
660 static void WINAPI wine_glBufferDataARB( GLenum target, INT_PTR size, const GLvoid* data, GLenum usage ) {
661   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
662   TRACE("(%d, %ld, %p, %d)\n", target, size, data, usage );
663   funcs->ext.p_glBufferDataARB( target, size, data, usage );
664 }
665
666 static void WINAPI wine_glBufferParameteriAPPLE( GLenum target, GLenum pname, GLint param ) {
667   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
668   TRACE("(%d, %d, %d)\n", target, pname, param );
669   funcs->ext.p_glBufferParameteriAPPLE( target, pname, param );
670 }
671
672 static GLuint WINAPI wine_glBufferRegionEnabled( void ) {
673   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
674   TRACE("()\n");
675   return funcs->ext.p_glBufferRegionEnabled( );
676 }
677
678 static void WINAPI wine_glBufferSubData( GLenum target, INT_PTR offset, INT_PTR size, const GLvoid* data ) {
679   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
680   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
681   funcs->ext.p_glBufferSubData( target, offset, size, data );
682 }
683
684 static void WINAPI wine_glBufferSubDataARB( GLenum target, INT_PTR offset, INT_PTR size, const GLvoid* data ) {
685   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
686   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
687   funcs->ext.p_glBufferSubDataARB( target, offset, size, data );
688 }
689
690 static GLenum WINAPI wine_glCheckFramebufferStatus( GLenum target ) {
691   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
692   TRACE("(%d)\n", target );
693   return funcs->ext.p_glCheckFramebufferStatus( target );
694 }
695
696 static GLenum WINAPI wine_glCheckFramebufferStatusEXT( GLenum target ) {
697   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
698   TRACE("(%d)\n", target );
699   return funcs->ext.p_glCheckFramebufferStatusEXT( target );
700 }
701
702 static GLenum WINAPI wine_glCheckNamedFramebufferStatusEXT( GLuint framebuffer, GLenum target ) {
703   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
704   TRACE("(%d, %d)\n", framebuffer, target );
705   return funcs->ext.p_glCheckNamedFramebufferStatusEXT( framebuffer, target );
706 }
707
708 static void WINAPI wine_glClampColor( GLenum target, GLenum clamp ) {
709   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
710   TRACE("(%d, %d)\n", target, clamp );
711   funcs->ext.p_glClampColor( target, clamp );
712 }
713
714 static void WINAPI wine_glClampColorARB( GLenum target, GLenum clamp ) {
715   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
716   TRACE("(%d, %d)\n", target, clamp );
717   funcs->ext.p_glClampColorARB( target, clamp );
718 }
719
720 static void WINAPI wine_glClearBufferData( GLenum target, GLenum internalformat, GLenum format, GLenum type, const void* data ) {
721   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
722   TRACE("(%d, %d, %d, %d, %p)\n", target, internalformat, format, type, data );
723   funcs->ext.p_glClearBufferData( target, internalformat, format, type, data );
724 }
725
726 static void WINAPI wine_glClearBufferSubData( GLenum target, GLenum internalformat, INT_PTR offset, INT_PTR size, GLenum format, GLenum type, const void* data ) {
727   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
728   TRACE("(%d, %d, %ld, %ld, %d, %d, %p)\n", target, internalformat, offset, size, format, type, data );
729   funcs->ext.p_glClearBufferSubData( target, internalformat, offset, size, format, type, data );
730 }
731
732 static void WINAPI wine_glClearBufferfi( GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil ) {
733   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
734   TRACE("(%d, %d, %f, %d)\n", buffer, drawbuffer, depth, stencil );
735   funcs->ext.p_glClearBufferfi( buffer, drawbuffer, depth, stencil );
736 }
737
738 static void WINAPI wine_glClearBufferfv( GLenum buffer, GLint drawbuffer, const GLfloat* value ) {
739   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
740   TRACE("(%d, %d, %p)\n", buffer, drawbuffer, value );
741   funcs->ext.p_glClearBufferfv( buffer, drawbuffer, value );
742 }
743
744 static void WINAPI wine_glClearBufferiv( GLenum buffer, GLint drawbuffer, const GLint* value ) {
745   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
746   TRACE("(%d, %d, %p)\n", buffer, drawbuffer, value );
747   funcs->ext.p_glClearBufferiv( buffer, drawbuffer, value );
748 }
749
750 static void WINAPI wine_glClearBufferuiv( GLenum buffer, GLint drawbuffer, const GLuint* value ) {
751   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
752   TRACE("(%d, %d, %p)\n", buffer, drawbuffer, value );
753   funcs->ext.p_glClearBufferuiv( buffer, drawbuffer, value );
754 }
755
756 static void WINAPI wine_glClearColorIiEXT( GLint red, GLint green, GLint blue, GLint alpha ) {
757   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
758   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
759   funcs->ext.p_glClearColorIiEXT( red, green, blue, alpha );
760 }
761
762 static void WINAPI wine_glClearColorIuiEXT( GLuint red, GLuint green, GLuint blue, GLuint alpha ) {
763   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
764   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
765   funcs->ext.p_glClearColorIuiEXT( red, green, blue, alpha );
766 }
767
768 static void WINAPI wine_glClearDepthdNV( GLdouble depth ) {
769   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
770   TRACE("(%f)\n", depth );
771   funcs->ext.p_glClearDepthdNV( depth );
772 }
773
774 static void WINAPI wine_glClearDepthf( GLfloat d ) {
775   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
776   TRACE("(%f)\n", d );
777   funcs->ext.p_glClearDepthf( d );
778 }
779
780 static void WINAPI wine_glClearNamedBufferDataEXT( GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void* data ) {
781   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
782   TRACE("(%d, %d, %d, %d, %p)\n", buffer, internalformat, format, type, data );
783   funcs->ext.p_glClearNamedBufferDataEXT( buffer, internalformat, format, type, data );
784 }
785
786 static void WINAPI wine_glClearNamedBufferSubDataEXT( GLuint buffer, GLenum internalformat, GLenum format, GLenum type, INT_PTR offset, INT_PTR size, const void* data ) {
787   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
788   TRACE("(%d, %d, %d, %d, %ld, %ld, %p)\n", buffer, internalformat, format, type, offset, size, data );
789   funcs->ext.p_glClearNamedBufferSubDataEXT( buffer, internalformat, format, type, offset, size, data );
790 }
791
792 static void WINAPI wine_glClientActiveTexture( GLenum texture ) {
793   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
794   TRACE("(%d)\n", texture );
795   funcs->ext.p_glClientActiveTexture( texture );
796 }
797
798 static void WINAPI wine_glClientActiveTextureARB( GLenum texture ) {
799   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
800   TRACE("(%d)\n", texture );
801   funcs->ext.p_glClientActiveTextureARB( texture );
802 }
803
804 static void WINAPI wine_glClientActiveVertexStreamATI( GLenum stream ) {
805   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
806   TRACE("(%d)\n", stream );
807   funcs->ext.p_glClientActiveVertexStreamATI( stream );
808 }
809
810 static void WINAPI wine_glClientAttribDefaultEXT( GLbitfield mask ) {
811   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
812   TRACE("(%d)\n", mask );
813   funcs->ext.p_glClientAttribDefaultEXT( mask );
814 }
815
816 static GLenum WINAPI wine_glClientWaitSync( GLvoid* sync, GLbitfield flags, UINT64 timeout ) {
817   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
818   TRACE("(%p, %d, %s)\n", sync, flags, wine_dbgstr_longlong(timeout) );
819   return funcs->ext.p_glClientWaitSync( sync, flags, timeout );
820 }
821
822 static void WINAPI wine_glColor3fVertex3fSUN( GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z ) {
823   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
824   TRACE("(%f, %f, %f, %f, %f, %f)\n", r, g, b, x, y, z );
825   funcs->ext.p_glColor3fVertex3fSUN( r, g, b, x, y, z );
826 }
827
828 static void WINAPI wine_glColor3fVertex3fvSUN( const GLfloat* c, const GLfloat* v ) {
829   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
830   TRACE("(%p, %p)\n", c, v );
831   funcs->ext.p_glColor3fVertex3fvSUN( c, v );
832 }
833
834 static void WINAPI wine_glColor3hNV( unsigned short red, unsigned short green, unsigned short blue ) {
835   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
836   TRACE("(%d, %d, %d)\n", red, green, blue );
837   funcs->ext.p_glColor3hNV( red, green, blue );
838 }
839
840 static void WINAPI wine_glColor3hvNV( const unsigned short* v ) {
841   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
842   TRACE("(%p)\n", v );
843   funcs->ext.p_glColor3hvNV( v );
844 }
845
846 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 ) {
847   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
848   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f, %f, %f)\n", r, g, b, a, nx, ny, nz, x, y, z );
849   funcs->ext.p_glColor4fNormal3fVertex3fSUN( r, g, b, a, nx, ny, nz, x, y, z );
850 }
851
852 static void WINAPI wine_glColor4fNormal3fVertex3fvSUN( const GLfloat* c, const GLfloat* n, const GLfloat* v ) {
853   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
854   TRACE("(%p, %p, %p)\n", c, n, v );
855   funcs->ext.p_glColor4fNormal3fVertex3fvSUN( c, n, v );
856 }
857
858 static void WINAPI wine_glColor4hNV( unsigned short red, unsigned short green, unsigned short blue, unsigned short alpha ) {
859   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
860   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
861   funcs->ext.p_glColor4hNV( red, green, blue, alpha );
862 }
863
864 static void WINAPI wine_glColor4hvNV( const unsigned short* v ) {
865   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
866   TRACE("(%p)\n", v );
867   funcs->ext.p_glColor4hvNV( v );
868 }
869
870 static void WINAPI wine_glColor4ubVertex2fSUN( GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y ) {
871   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
872   TRACE("(%d, %d, %d, %d, %f, %f)\n", r, g, b, a, x, y );
873   funcs->ext.p_glColor4ubVertex2fSUN( r, g, b, a, x, y );
874 }
875
876 static void WINAPI wine_glColor4ubVertex2fvSUN( const GLubyte* c, const GLfloat* v ) {
877   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
878   TRACE("(%p, %p)\n", c, v );
879   funcs->ext.p_glColor4ubVertex2fvSUN( c, v );
880 }
881
882 static void WINAPI wine_glColor4ubVertex3fSUN( GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z ) {
883   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
884   TRACE("(%d, %d, %d, %d, %f, %f, %f)\n", r, g, b, a, x, y, z );
885   funcs->ext.p_glColor4ubVertex3fSUN( r, g, b, a, x, y, z );
886 }
887
888 static void WINAPI wine_glColor4ubVertex3fvSUN( const GLubyte* c, const GLfloat* v ) {
889   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
890   TRACE("(%p, %p)\n", c, v );
891   funcs->ext.p_glColor4ubVertex3fvSUN( c, v );
892 }
893
894 static void WINAPI wine_glColorFormatNV( GLint size, GLenum type, GLsizei stride ) {
895   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
896   TRACE("(%d, %d, %d)\n", size, type, stride );
897   funcs->ext.p_glColorFormatNV( size, type, stride );
898 }
899
900 static void WINAPI wine_glColorFragmentOp1ATI( GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod ) {
901   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
902   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod );
903   funcs->ext.p_glColorFragmentOp1ATI( op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod );
904 }
905
906 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 ) {
907   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
908   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod );
909   funcs->ext.p_glColorFragmentOp2ATI( op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod );
910 }
911
912 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 ) {
913   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
914   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 );
915   funcs->ext.p_glColorFragmentOp3ATI( op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod );
916 }
917
918 static void WINAPI wine_glColorMaskIndexedEXT( GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a ) {
919   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
920   TRACE("(%d, %d, %d, %d, %d)\n", index, r, g, b, a );
921   funcs->ext.p_glColorMaskIndexedEXT( index, r, g, b, a );
922 }
923
924 static void WINAPI wine_glColorMaski( GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a ) {
925   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
926   TRACE("(%d, %d, %d, %d, %d)\n", index, r, g, b, a );
927   funcs->ext.p_glColorMaski( index, r, g, b, a );
928 }
929
930 static void WINAPI wine_glColorP3ui( GLenum type, GLuint color ) {
931   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
932   TRACE("(%d, %d)\n", type, color );
933   funcs->ext.p_glColorP3ui( type, color );
934 }
935
936 static void WINAPI wine_glColorP3uiv( GLenum type, const GLuint* color ) {
937   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
938   TRACE("(%d, %p)\n", type, color );
939   funcs->ext.p_glColorP3uiv( type, color );
940 }
941
942 static void WINAPI wine_glColorP4ui( GLenum type, GLuint color ) {
943   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
944   TRACE("(%d, %d)\n", type, color );
945   funcs->ext.p_glColorP4ui( type, color );
946 }
947
948 static void WINAPI wine_glColorP4uiv( GLenum type, const GLuint* color ) {
949   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
950   TRACE("(%d, %p)\n", type, color );
951   funcs->ext.p_glColorP4uiv( type, color );
952 }
953
954 static void WINAPI wine_glColorPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid* pointer ) {
955   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
956   TRACE("(%d, %d, %d, %d, %p)\n", size, type, stride, count, pointer );
957   funcs->ext.p_glColorPointerEXT( size, type, stride, count, pointer );
958 }
959
960 static void WINAPI wine_glColorPointerListIBM( GLint size, GLenum type, GLint stride, const GLvoid** pointer, GLint ptrstride ) {
961   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
962   TRACE("(%d, %d, %d, %p, %d)\n", size, type, stride, pointer, ptrstride );
963   funcs->ext.p_glColorPointerListIBM( size, type, stride, pointer, ptrstride );
964 }
965
966 static void WINAPI wine_glColorPointervINTEL( GLint size, GLenum type, const GLvoid** pointer ) {
967   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
968   TRACE("(%d, %d, %p)\n", size, type, pointer );
969   funcs->ext.p_glColorPointervINTEL( size, type, pointer );
970 }
971
972 static void WINAPI wine_glColorSubTable( GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid* data ) {
973   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
974   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, start, count, format, type, data );
975   funcs->ext.p_glColorSubTable( target, start, count, format, type, data );
976 }
977
978 static void WINAPI wine_glColorSubTableEXT( GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid* data ) {
979   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
980   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, start, count, format, type, data );
981   funcs->ext.p_glColorSubTableEXT( target, start, count, format, type, data );
982 }
983
984 static void WINAPI wine_glColorTable( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid* table ) {
985   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
986   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, table );
987   funcs->ext.p_glColorTable( target, internalformat, width, format, type, table );
988 }
989
990 static void WINAPI wine_glColorTableEXT( GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const GLvoid* table ) {
991   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
992   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalFormat, width, format, type, table );
993   funcs->ext.p_glColorTableEXT( target, internalFormat, width, format, type, table );
994 }
995
996 static void WINAPI wine_glColorTableParameterfv( GLenum target, GLenum pname, const GLfloat* params ) {
997   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
998   TRACE("(%d, %d, %p)\n", target, pname, params );
999   funcs->ext.p_glColorTableParameterfv( target, pname, params );
1000 }
1001
1002 static void WINAPI wine_glColorTableParameterfvSGI( GLenum target, GLenum pname, const GLfloat* params ) {
1003   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1004   TRACE("(%d, %d, %p)\n", target, pname, params );
1005   funcs->ext.p_glColorTableParameterfvSGI( target, pname, params );
1006 }
1007
1008 static void WINAPI wine_glColorTableParameteriv( GLenum target, GLenum pname, const GLint* params ) {
1009   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1010   TRACE("(%d, %d, %p)\n", target, pname, params );
1011   funcs->ext.p_glColorTableParameteriv( target, pname, params );
1012 }
1013
1014 static void WINAPI wine_glColorTableParameterivSGI( GLenum target, GLenum pname, const GLint* params ) {
1015   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1016   TRACE("(%d, %d, %p)\n", target, pname, params );
1017   funcs->ext.p_glColorTableParameterivSGI( target, pname, params );
1018 }
1019
1020 static void WINAPI wine_glColorTableSGI( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid* table ) {
1021   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1022   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, table );
1023   funcs->ext.p_glColorTableSGI( target, internalformat, width, format, type, table );
1024 }
1025
1026 static void WINAPI wine_glCombinerInputNV( GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage ) {
1027   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1028   TRACE("(%d, %d, %d, %d, %d, %d)\n", stage, portion, variable, input, mapping, componentUsage );
1029   funcs->ext.p_glCombinerInputNV( stage, portion, variable, input, mapping, componentUsage );
1030 }
1031
1032 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 ) {
1033   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1034   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum );
1035   funcs->ext.p_glCombinerOutputNV( stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum );
1036 }
1037
1038 static void WINAPI wine_glCombinerParameterfNV( GLenum pname, GLfloat param ) {
1039   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1040   TRACE("(%d, %f)\n", pname, param );
1041   funcs->ext.p_glCombinerParameterfNV( pname, param );
1042 }
1043
1044 static void WINAPI wine_glCombinerParameterfvNV( GLenum pname, const GLfloat* params ) {
1045   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1046   TRACE("(%d, %p)\n", pname, params );
1047   funcs->ext.p_glCombinerParameterfvNV( pname, params );
1048 }
1049
1050 static void WINAPI wine_glCombinerParameteriNV( GLenum pname, GLint param ) {
1051   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1052   TRACE("(%d, %d)\n", pname, param );
1053   funcs->ext.p_glCombinerParameteriNV( pname, param );
1054 }
1055
1056 static void WINAPI wine_glCombinerParameterivNV( GLenum pname, const GLint* params ) {
1057   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1058   TRACE("(%d, %p)\n", pname, params );
1059   funcs->ext.p_glCombinerParameterivNV( pname, params );
1060 }
1061
1062 static void WINAPI wine_glCombinerStageParameterfvNV( GLenum stage, GLenum pname, const GLfloat* params ) {
1063   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1064   TRACE("(%d, %d, %p)\n", stage, pname, params );
1065   funcs->ext.p_glCombinerStageParameterfvNV( stage, pname, params );
1066 }
1067
1068 static void WINAPI wine_glCompileShader( GLuint shader ) {
1069   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1070   TRACE("(%d)\n", shader );
1071   funcs->ext.p_glCompileShader( shader );
1072 }
1073
1074 static void WINAPI wine_glCompileShaderARB( unsigned int shaderObj ) {
1075   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1076   TRACE("(%d)\n", shaderObj );
1077   funcs->ext.p_glCompileShaderARB( shaderObj );
1078 }
1079
1080 static void WINAPI wine_glCompileShaderIncludeARB( GLuint shader, GLsizei count, const char** path, const GLint* length ) {
1081   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1082   TRACE("(%d, %d, %p, %p)\n", shader, count, path, length );
1083   funcs->ext.p_glCompileShaderIncludeARB( shader, count, path, length );
1084 }
1085
1086 static void WINAPI wine_glCompressedMultiTexImage1DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid* bits ) {
1087   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1088   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, border, imageSize, bits );
1089   funcs->ext.p_glCompressedMultiTexImage1DEXT( texunit, target, level, internalformat, width, border, imageSize, bits );
1090 }
1091
1092 static void WINAPI wine_glCompressedMultiTexImage2DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* bits ) {
1093   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1094   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, height, border, imageSize, bits );
1095   funcs->ext.p_glCompressedMultiTexImage2DEXT( texunit, target, level, internalformat, width, height, border, imageSize, bits );
1096 }
1097
1098 static void WINAPI wine_glCompressedMultiTexImage3DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* bits ) {
1099   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1100   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, height, depth, border, imageSize, bits );
1101   funcs->ext.p_glCompressedMultiTexImage3DEXT( texunit, target, level, internalformat, width, height, depth, border, imageSize, bits );
1102 }
1103
1104 static void WINAPI wine_glCompressedMultiTexSubImage1DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid* bits ) {
1105   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1106   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, width, format, imageSize, bits );
1107   funcs->ext.p_glCompressedMultiTexSubImage1DEXT( texunit, target, level, xoffset, width, format, imageSize, bits );
1108 }
1109
1110 static void WINAPI wine_glCompressedMultiTexSubImage2DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* bits ) {
1111   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1112   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits );
1113   funcs->ext.p_glCompressedMultiTexSubImage2DEXT( texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits );
1114 }
1115
1116 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, const GLvoid* bits ) {
1117   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1118   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 );
1119   funcs->ext.p_glCompressedMultiTexSubImage3DEXT( texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits );
1120 }
1121
1122 static void WINAPI wine_glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid* data ) {
1123   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1124   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, border, imageSize, data );
1125   funcs->ext.p_glCompressedTexImage1D( target, level, internalformat, width, border, imageSize, data );
1126 }
1127
1128 static void WINAPI wine_glCompressedTexImage1DARB( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid* data ) {
1129   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1130   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, border, imageSize, data );
1131   funcs->ext.p_glCompressedTexImage1DARB( target, level, internalformat, width, border, imageSize, data );
1132 }
1133
1134 static void WINAPI wine_glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data ) {
1135   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1136   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, border, imageSize, data );
1137   funcs->ext.p_glCompressedTexImage2D( target, level, internalformat, width, height, border, imageSize, data );
1138 }
1139
1140 static void WINAPI wine_glCompressedTexImage2DARB( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data ) {
1141   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1142   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, border, imageSize, data );
1143   funcs->ext.p_glCompressedTexImage2DARB( target, level, internalformat, width, height, border, imageSize, data );
1144 }
1145
1146 static void WINAPI wine_glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data ) {
1147   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1148   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, border, imageSize, data );
1149   funcs->ext.p_glCompressedTexImage3D( target, level, internalformat, width, height, depth, border, imageSize, data );
1150 }
1151
1152 static void WINAPI wine_glCompressedTexImage3DARB( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data ) {
1153   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1154   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, border, imageSize, data );
1155   funcs->ext.p_glCompressedTexImage3DARB( target, level, internalformat, width, height, depth, border, imageSize, data );
1156 }
1157
1158 static void WINAPI wine_glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid* data ) {
1159   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1160   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, width, format, imageSize, data );
1161   funcs->ext.p_glCompressedTexSubImage1D( target, level, xoffset, width, format, imageSize, data );
1162 }
1163
1164 static void WINAPI wine_glCompressedTexSubImage1DARB( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid* data ) {
1165   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1166   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, width, format, imageSize, data );
1167   funcs->ext.p_glCompressedTexSubImage1DARB( target, level, xoffset, width, format, imageSize, data );
1168 }
1169
1170 static void WINAPI wine_glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data ) {
1171   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1172   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, width, height, format, imageSize, data );
1173   funcs->ext.p_glCompressedTexSubImage2D( target, level, xoffset, yoffset, width, height, format, imageSize, data );
1174 }
1175
1176 static void WINAPI wine_glCompressedTexSubImage2DARB( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data ) {
1177   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1178   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, width, height, format, imageSize, data );
1179   funcs->ext.p_glCompressedTexSubImage2DARB( target, level, xoffset, yoffset, width, height, format, imageSize, data );
1180 }
1181
1182 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, const GLvoid* data ) {
1183   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1184   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
1185   funcs->ext.p_glCompressedTexSubImage3D( target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
1186 }
1187
1188 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, const GLvoid* data ) {
1189   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1190   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
1191   funcs->ext.p_glCompressedTexSubImage3DARB( target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
1192 }
1193
1194 static void WINAPI wine_glCompressedTextureImage1DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid* bits ) {
1195   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1196   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, border, imageSize, bits );
1197   funcs->ext.p_glCompressedTextureImage1DEXT( texture, target, level, internalformat, width, border, imageSize, bits );
1198 }
1199
1200 static void WINAPI wine_glCompressedTextureImage2DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* bits ) {
1201   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1202   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, height, border, imageSize, bits );
1203   funcs->ext.p_glCompressedTextureImage2DEXT( texture, target, level, internalformat, width, height, border, imageSize, bits );
1204 }
1205
1206 static void WINAPI wine_glCompressedTextureImage3DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* bits ) {
1207   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1208   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, height, depth, border, imageSize, bits );
1209   funcs->ext.p_glCompressedTextureImage3DEXT( texture, target, level, internalformat, width, height, depth, border, imageSize, bits );
1210 }
1211
1212 static void WINAPI wine_glCompressedTextureSubImage1DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid* bits ) {
1213   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1214   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, width, format, imageSize, bits );
1215   funcs->ext.p_glCompressedTextureSubImage1DEXT( texture, target, level, xoffset, width, format, imageSize, bits );
1216 }
1217
1218 static void WINAPI wine_glCompressedTextureSubImage2DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* bits ) {
1219   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1220   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits );
1221   funcs->ext.p_glCompressedTextureSubImage2DEXT( texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits );
1222 }
1223
1224 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, const GLvoid* bits ) {
1225   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1226   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 );
1227   funcs->ext.p_glCompressedTextureSubImage3DEXT( texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits );
1228 }
1229
1230 static void WINAPI wine_glConvolutionFilter1D( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid* image ) {
1231   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1232   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, image );
1233   funcs->ext.p_glConvolutionFilter1D( target, internalformat, width, format, type, image );
1234 }
1235
1236 static void WINAPI wine_glConvolutionFilter1DEXT( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid* image ) {
1237   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1238   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, image );
1239   funcs->ext.p_glConvolutionFilter1DEXT( target, internalformat, width, format, type, image );
1240 }
1241
1242 static void WINAPI wine_glConvolutionFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* image ) {
1243   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1244   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, internalformat, width, height, format, type, image );
1245   funcs->ext.p_glConvolutionFilter2D( target, internalformat, width, height, format, type, image );
1246 }
1247
1248 static void WINAPI wine_glConvolutionFilter2DEXT( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* image ) {
1249   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1250   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, internalformat, width, height, format, type, image );
1251   funcs->ext.p_glConvolutionFilter2DEXT( target, internalformat, width, height, format, type, image );
1252 }
1253
1254 static void WINAPI wine_glConvolutionParameterf( GLenum target, GLenum pname, GLfloat params ) {
1255   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1256   TRACE("(%d, %d, %f)\n", target, pname, params );
1257   funcs->ext.p_glConvolutionParameterf( target, pname, params );
1258 }
1259
1260 static void WINAPI wine_glConvolutionParameterfEXT( GLenum target, GLenum pname, GLfloat params ) {
1261   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1262   TRACE("(%d, %d, %f)\n", target, pname, params );
1263   funcs->ext.p_glConvolutionParameterfEXT( target, pname, params );
1264 }
1265
1266 static void WINAPI wine_glConvolutionParameterfv( GLenum target, GLenum pname, const GLfloat* params ) {
1267   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1268   TRACE("(%d, %d, %p)\n", target, pname, params );
1269   funcs->ext.p_glConvolutionParameterfv( target, pname, params );
1270 }
1271
1272 static void WINAPI wine_glConvolutionParameterfvEXT( GLenum target, GLenum pname, const GLfloat* params ) {
1273   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1274   TRACE("(%d, %d, %p)\n", target, pname, params );
1275   funcs->ext.p_glConvolutionParameterfvEXT( target, pname, params );
1276 }
1277
1278 static void WINAPI wine_glConvolutionParameteri( GLenum target, GLenum pname, GLint params ) {
1279   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1280   TRACE("(%d, %d, %d)\n", target, pname, params );
1281   funcs->ext.p_glConvolutionParameteri( target, pname, params );
1282 }
1283
1284 static void WINAPI wine_glConvolutionParameteriEXT( GLenum target, GLenum pname, GLint params ) {
1285   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1286   TRACE("(%d, %d, %d)\n", target, pname, params );
1287   funcs->ext.p_glConvolutionParameteriEXT( target, pname, params );
1288 }
1289
1290 static void WINAPI wine_glConvolutionParameteriv( GLenum target, GLenum pname, const GLint* params ) {
1291   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1292   TRACE("(%d, %d, %p)\n", target, pname, params );
1293   funcs->ext.p_glConvolutionParameteriv( target, pname, params );
1294 }
1295
1296 static void WINAPI wine_glConvolutionParameterivEXT( GLenum target, GLenum pname, const GLint* params ) {
1297   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1298   TRACE("(%d, %d, %p)\n", target, pname, params );
1299   funcs->ext.p_glConvolutionParameterivEXT( target, pname, params );
1300 }
1301
1302 static void WINAPI wine_glCopyBufferSubData( GLenum readTarget, GLenum writeTarget, INT_PTR readOffset, INT_PTR writeOffset, INT_PTR size ) {
1303   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1304   TRACE("(%d, %d, %ld, %ld, %ld)\n", readTarget, writeTarget, readOffset, writeOffset, size );
1305   funcs->ext.p_glCopyBufferSubData( readTarget, writeTarget, readOffset, writeOffset, size );
1306 }
1307
1308 static void WINAPI wine_glCopyColorSubTable( GLenum target, GLsizei start, GLint x, GLint y, GLsizei width ) {
1309   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1310   TRACE("(%d, %d, %d, %d, %d)\n", target, start, x, y, width );
1311   funcs->ext.p_glCopyColorSubTable( target, start, x, y, width );
1312 }
1313
1314 static void WINAPI wine_glCopyColorSubTableEXT( GLenum target, GLsizei start, GLint x, GLint y, GLsizei width ) {
1315   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1316   TRACE("(%d, %d, %d, %d, %d)\n", target, start, x, y, width );
1317   funcs->ext.p_glCopyColorSubTableEXT( target, start, x, y, width );
1318 }
1319
1320 static void WINAPI wine_glCopyColorTable( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
1321   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1322   TRACE("(%d, %d, %d, %d, %d)\n", target, internalformat, x, y, width );
1323   funcs->ext.p_glCopyColorTable( target, internalformat, x, y, width );
1324 }
1325
1326 static void WINAPI wine_glCopyColorTableSGI( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
1327   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1328   TRACE("(%d, %d, %d, %d, %d)\n", target, internalformat, x, y, width );
1329   funcs->ext.p_glCopyColorTableSGI( target, internalformat, x, y, width );
1330 }
1331
1332 static void WINAPI wine_glCopyConvolutionFilter1D( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
1333   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1334   TRACE("(%d, %d, %d, %d, %d)\n", target, internalformat, x, y, width );
1335   funcs->ext.p_glCopyConvolutionFilter1D( target, internalformat, x, y, width );
1336 }
1337
1338 static void WINAPI wine_glCopyConvolutionFilter1DEXT( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
1339   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1340   TRACE("(%d, %d, %d, %d, %d)\n", target, internalformat, x, y, width );
1341   funcs->ext.p_glCopyConvolutionFilter1DEXT( target, internalformat, x, y, width );
1342 }
1343
1344 static void WINAPI wine_glCopyConvolutionFilter2D( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height ) {
1345   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1346   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, internalformat, x, y, width, height );
1347   funcs->ext.p_glCopyConvolutionFilter2D( target, internalformat, x, y, width, height );
1348 }
1349
1350 static void WINAPI wine_glCopyConvolutionFilter2DEXT( GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height ) {
1351   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1352   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, internalformat, x, y, width, height );
1353   funcs->ext.p_glCopyConvolutionFilter2DEXT( target, internalformat, x, y, width, height );
1354 }
1355
1356 static void WINAPI wine_glCopyImageSubData( 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 srcWidth, GLsizei srcHeight, GLsizei srcDepth ) {
1357   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1358   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, srcWidth, srcHeight, srcDepth );
1359   funcs->ext.p_glCopyImageSubData( srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth );
1360 }
1361
1362 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 ) {
1363   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1364   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 );
1365   funcs->ext.p_glCopyImageSubDataNV( srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth );
1366 }
1367
1368 static void WINAPI wine_glCopyMultiTexImage1DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) {
1369   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1370   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, internalformat, x, y, width, border );
1371   funcs->ext.p_glCopyMultiTexImage1DEXT( texunit, target, level, internalformat, x, y, width, border );
1372 }
1373
1374 static void WINAPI wine_glCopyMultiTexImage2DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) {
1375   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1376   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, internalformat, x, y, width, height, border );
1377   funcs->ext.p_glCopyMultiTexImage2DEXT( texunit, target, level, internalformat, x, y, width, height, border );
1378 }
1379
1380 static void WINAPI wine_glCopyMultiTexSubImage1DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) {
1381   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1382   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, xoffset, x, y, width );
1383   funcs->ext.p_glCopyMultiTexSubImage1DEXT( texunit, target, level, xoffset, x, y, width );
1384 }
1385
1386 static void WINAPI wine_glCopyMultiTexSubImage2DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
1387   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1388   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, xoffset, yoffset, x, y, width, height );
1389   funcs->ext.p_glCopyMultiTexSubImage2DEXT( texunit, target, level, xoffset, yoffset, x, y, width, height );
1390 }
1391
1392 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 ) {
1393   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1394   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height );
1395   funcs->ext.p_glCopyMultiTexSubImage3DEXT( texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height );
1396 }
1397
1398 static void WINAPI wine_glCopyPathNV( GLuint resultPath, GLuint srcPath ) {
1399   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1400   TRACE("(%d, %d)\n", resultPath, srcPath );
1401   funcs->ext.p_glCopyPathNV( resultPath, srcPath );
1402 }
1403
1404 static void WINAPI wine_glCopyTexImage1DEXT( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) {
1405   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1406   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", target, level, internalformat, x, y, width, border );
1407   funcs->ext.p_glCopyTexImage1DEXT( target, level, internalformat, x, y, width, border );
1408 }
1409
1410 static void WINAPI wine_glCopyTexImage2DEXT( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) {
1411   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1412   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, internalformat, x, y, width, height, border );
1413   funcs->ext.p_glCopyTexImage2DEXT( target, level, internalformat, x, y, width, height, border );
1414 }
1415
1416 static void WINAPI wine_glCopyTexSubImage1DEXT( GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) {
1417   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1418   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, level, xoffset, x, y, width );
1419   funcs->ext.p_glCopyTexSubImage1DEXT( target, level, xoffset, x, y, width );
1420 }
1421
1422 static void WINAPI wine_glCopyTexSubImage2DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
1423   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1424   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, xoffset, yoffset, x, y, width, height );
1425   funcs->ext.p_glCopyTexSubImage2DEXT( target, level, xoffset, yoffset, x, y, width, height );
1426 }
1427
1428 static void WINAPI wine_glCopyTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
1429   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1430   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, xoffset, yoffset, zoffset, x, y, width, height );
1431   funcs->ext.p_glCopyTexSubImage3D( target, level, xoffset, yoffset, zoffset, x, y, width, height );
1432 }
1433
1434 static void WINAPI wine_glCopyTexSubImage3DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
1435   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1436   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, xoffset, yoffset, zoffset, x, y, width, height );
1437   funcs->ext.p_glCopyTexSubImage3DEXT( target, level, xoffset, yoffset, zoffset, x, y, width, height );
1438 }
1439
1440 static void WINAPI wine_glCopyTextureImage1DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) {
1441   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1442   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, internalformat, x, y, width, border );
1443   funcs->ext.p_glCopyTextureImage1DEXT( texture, target, level, internalformat, x, y, width, border );
1444 }
1445
1446 static void WINAPI wine_glCopyTextureImage2DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) {
1447   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1448   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, internalformat, x, y, width, height, border );
1449   funcs->ext.p_glCopyTextureImage2DEXT( texture, target, level, internalformat, x, y, width, height, border );
1450 }
1451
1452 static void WINAPI wine_glCopyTextureSubImage1DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) {
1453   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1454   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, xoffset, x, y, width );
1455   funcs->ext.p_glCopyTextureSubImage1DEXT( texture, target, level, xoffset, x, y, width );
1456 }
1457
1458 static void WINAPI wine_glCopyTextureSubImage2DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
1459   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1460   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, xoffset, yoffset, x, y, width, height );
1461   funcs->ext.p_glCopyTextureSubImage2DEXT( texture, target, level, xoffset, yoffset, x, y, width, height );
1462 }
1463
1464 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 ) {
1465   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1466   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, level, xoffset, yoffset, zoffset, x, y, width, height );
1467   funcs->ext.p_glCopyTextureSubImage3DEXT( texture, target, level, xoffset, yoffset, zoffset, x, y, width, height );
1468 }
1469
1470 static void WINAPI wine_glCoverFillPathInstancedNV( GLsizei numPaths, GLenum pathNameType, const GLvoid* paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat* transformValues ) {
1471   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1472   TRACE("(%d, %d, %p, %d, %d, %d, %p)\n", numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues );
1473   funcs->ext.p_glCoverFillPathInstancedNV( numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues );
1474 }
1475
1476 static void WINAPI wine_glCoverFillPathNV( GLuint path, GLenum coverMode ) {
1477   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1478   TRACE("(%d, %d)\n", path, coverMode );
1479   funcs->ext.p_glCoverFillPathNV( path, coverMode );
1480 }
1481
1482 static void WINAPI wine_glCoverStrokePathInstancedNV( GLsizei numPaths, GLenum pathNameType, const GLvoid* paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat* transformValues ) {
1483   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1484   TRACE("(%d, %d, %p, %d, %d, %d, %p)\n", numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues );
1485   funcs->ext.p_glCoverStrokePathInstancedNV( numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues );
1486 }
1487
1488 static void WINAPI wine_glCoverStrokePathNV( GLuint path, GLenum coverMode ) {
1489   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1490   TRACE("(%d, %d)\n", path, coverMode );
1491   funcs->ext.p_glCoverStrokePathNV( path, coverMode );
1492 }
1493
1494 static GLuint WINAPI wine_glCreateProgram( void ) {
1495   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1496   TRACE("()\n");
1497   return funcs->ext.p_glCreateProgram( );
1498 }
1499
1500 static unsigned int WINAPI wine_glCreateProgramObjectARB( void ) {
1501   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1502   TRACE("()\n");
1503   return funcs->ext.p_glCreateProgramObjectARB( );
1504 }
1505
1506 static GLuint WINAPI wine_glCreateShader( GLenum type ) {
1507   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1508   TRACE("(%d)\n", type );
1509   return funcs->ext.p_glCreateShader( type );
1510 }
1511
1512 static unsigned int WINAPI wine_glCreateShaderObjectARB( GLenum shaderType ) {
1513   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1514   TRACE("(%d)\n", shaderType );
1515   return funcs->ext.p_glCreateShaderObjectARB( shaderType );
1516 }
1517
1518 static GLuint WINAPI wine_glCreateShaderProgramEXT( GLenum type, const char* string ) {
1519   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1520   TRACE("(%d, %p)\n", type, string );
1521   return funcs->ext.p_glCreateShaderProgramEXT( type, string );
1522 }
1523
1524 static GLuint WINAPI wine_glCreateShaderProgramv( GLenum type, GLsizei count, const char* const* strings ) {
1525   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1526   TRACE("(%d, %d, %p)\n", type, count, strings );
1527   return funcs->ext.p_glCreateShaderProgramv( type, count, strings );
1528 }
1529
1530 static GLvoid* WINAPI wine_glCreateSyncFromCLeventARB( void * context, void * event, GLbitfield flags ) {
1531   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1532   TRACE("(%p, %p, %d)\n", context, event, flags );
1533   return funcs->ext.p_glCreateSyncFromCLeventARB( context, event, flags );
1534 }
1535
1536 static void WINAPI wine_glCullParameterdvEXT( GLenum pname, GLdouble* params ) {
1537   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1538   TRACE("(%d, %p)\n", pname, params );
1539   funcs->ext.p_glCullParameterdvEXT( pname, params );
1540 }
1541
1542 static void WINAPI wine_glCullParameterfvEXT( GLenum pname, GLfloat* params ) {
1543   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1544   TRACE("(%d, %p)\n", pname, params );
1545   funcs->ext.p_glCullParameterfvEXT( pname, params );
1546 }
1547
1548 static void WINAPI wine_glCurrentPaletteMatrixARB( GLint index ) {
1549   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1550   TRACE("(%d)\n", index );
1551   funcs->ext.p_glCurrentPaletteMatrixARB( index );
1552 }
1553
1554 static void WINAPI wine_glDebugMessageCallback( void * callback, const void* userParam ) {
1555   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1556   TRACE("(%p, %p)\n", callback, userParam );
1557   funcs->ext.p_glDebugMessageCallback( callback, userParam );
1558 }
1559
1560 static void WINAPI wine_glDebugMessageCallbackAMD( void * callback, GLvoid* userParam ) {
1561   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1562   TRACE("(%p, %p)\n", callback, userParam );
1563   funcs->ext.p_glDebugMessageCallbackAMD( callback, userParam );
1564 }
1565
1566 static void WINAPI wine_glDebugMessageCallbackARB( void * callback, const GLvoid* userParam ) {
1567   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1568   TRACE("(%p, %p)\n", callback, userParam );
1569   funcs->ext.p_glDebugMessageCallbackARB( callback, userParam );
1570 }
1571
1572 static void WINAPI wine_glDebugMessageControl( GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled ) {
1573   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1574   TRACE("(%d, %d, %d, %d, %p, %d)\n", source, type, severity, count, ids, enabled );
1575   funcs->ext.p_glDebugMessageControl( source, type, severity, count, ids, enabled );
1576 }
1577
1578 static void WINAPI wine_glDebugMessageControlARB( GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled ) {
1579   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1580   TRACE("(%d, %d, %d, %d, %p, %d)\n", source, type, severity, count, ids, enabled );
1581   funcs->ext.p_glDebugMessageControlARB( source, type, severity, count, ids, enabled );
1582 }
1583
1584 static void WINAPI wine_glDebugMessageEnableAMD( GLenum category, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled ) {
1585   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1586   TRACE("(%d, %d, %d, %p, %d)\n", category, severity, count, ids, enabled );
1587   funcs->ext.p_glDebugMessageEnableAMD( category, severity, count, ids, enabled );
1588 }
1589
1590 static void WINAPI wine_glDebugMessageInsert( GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const char* buf ) {
1591   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1592   TRACE("(%d, %d, %d, %d, %d, %p)\n", source, type, id, severity, length, buf );
1593   funcs->ext.p_glDebugMessageInsert( source, type, id, severity, length, buf );
1594 }
1595
1596 static void WINAPI wine_glDebugMessageInsertAMD( GLenum category, GLenum severity, GLuint id, GLsizei length, const char* buf ) {
1597   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1598   TRACE("(%d, %d, %d, %d, %p)\n", category, severity, id, length, buf );
1599   funcs->ext.p_glDebugMessageInsertAMD( category, severity, id, length, buf );
1600 }
1601
1602 static void WINAPI wine_glDebugMessageInsertARB( GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const char* buf ) {
1603   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1604   TRACE("(%d, %d, %d, %d, %d, %p)\n", source, type, id, severity, length, buf );
1605   funcs->ext.p_glDebugMessageInsertARB( source, type, id, severity, length, buf );
1606 }
1607
1608 static void WINAPI wine_glDeformSGIX( GLbitfield mask ) {
1609   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1610   TRACE("(%d)\n", mask );
1611   funcs->ext.p_glDeformSGIX( mask );
1612 }
1613
1614 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, const GLdouble* points ) {
1615   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1616   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 );
1617   funcs->ext.p_glDeformationMap3dSGIX( target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points );
1618 }
1619
1620 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, const GLfloat* points ) {
1621   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1622   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 );
1623   funcs->ext.p_glDeformationMap3fSGIX( target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points );
1624 }
1625
1626 static void WINAPI wine_glDeleteAsyncMarkersSGIX( GLuint marker, GLsizei range ) {
1627   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1628   TRACE("(%d, %d)\n", marker, range );
1629   funcs->ext.p_glDeleteAsyncMarkersSGIX( marker, range );
1630 }
1631
1632 static void WINAPI wine_glDeleteBufferRegion( GLenum region ) {
1633   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1634   TRACE("(%d)\n", region );
1635   funcs->ext.p_glDeleteBufferRegion( region );
1636 }
1637
1638 static void WINAPI wine_glDeleteBuffers( GLsizei n, const GLuint* buffers ) {
1639   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1640   TRACE("(%d, %p)\n", n, buffers );
1641   funcs->ext.p_glDeleteBuffers( n, buffers );
1642 }
1643
1644 static void WINAPI wine_glDeleteBuffersARB( GLsizei n, const GLuint* buffers ) {
1645   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1646   TRACE("(%d, %p)\n", n, buffers );
1647   funcs->ext.p_glDeleteBuffersARB( n, buffers );
1648 }
1649
1650 static void WINAPI wine_glDeleteFencesAPPLE( GLsizei n, const GLuint* fences ) {
1651   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1652   TRACE("(%d, %p)\n", n, fences );
1653   funcs->ext.p_glDeleteFencesAPPLE( n, fences );
1654 }
1655
1656 static void WINAPI wine_glDeleteFencesNV( GLsizei n, const GLuint* fences ) {
1657   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1658   TRACE("(%d, %p)\n", n, fences );
1659   funcs->ext.p_glDeleteFencesNV( n, fences );
1660 }
1661
1662 static void WINAPI wine_glDeleteFragmentShaderATI( GLuint id ) {
1663   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1664   TRACE("(%d)\n", id );
1665   funcs->ext.p_glDeleteFragmentShaderATI( id );
1666 }
1667
1668 static void WINAPI wine_glDeleteFramebuffers( GLsizei n, const GLuint* framebuffers ) {
1669   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1670   TRACE("(%d, %p)\n", n, framebuffers );
1671   funcs->ext.p_glDeleteFramebuffers( n, framebuffers );
1672 }
1673
1674 static void WINAPI wine_glDeleteFramebuffersEXT( GLsizei n, const GLuint* framebuffers ) {
1675   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1676   TRACE("(%d, %p)\n", n, framebuffers );
1677   funcs->ext.p_glDeleteFramebuffersEXT( n, framebuffers );
1678 }
1679
1680 static void WINAPI wine_glDeleteNamedStringARB( GLint namelen, const char* name ) {
1681   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1682   TRACE("(%d, %p)\n", namelen, name );
1683   funcs->ext.p_glDeleteNamedStringARB( namelen, name );
1684 }
1685
1686 static void WINAPI wine_glDeleteNamesAMD( GLenum identifier, GLuint num, const GLuint* names ) {
1687   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1688   TRACE("(%d, %d, %p)\n", identifier, num, names );
1689   funcs->ext.p_glDeleteNamesAMD( identifier, num, names );
1690 }
1691
1692 static void WINAPI wine_glDeleteObjectARB( unsigned int obj ) {
1693   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1694   TRACE("(%d)\n", obj );
1695   funcs->ext.p_glDeleteObjectARB( obj );
1696 }
1697
1698 static void WINAPI wine_glDeleteObjectBufferATI( GLuint buffer ) {
1699   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1700   TRACE("(%d)\n", buffer );
1701   funcs->ext.p_glDeleteObjectBufferATI( buffer );
1702 }
1703
1704 static void WINAPI wine_glDeleteOcclusionQueriesNV( GLsizei n, const GLuint* ids ) {
1705   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1706   TRACE("(%d, %p)\n", n, ids );
1707   funcs->ext.p_glDeleteOcclusionQueriesNV( n, ids );
1708 }
1709
1710 static void WINAPI wine_glDeletePathsNV( GLuint path, GLsizei range ) {
1711   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1712   TRACE("(%d, %d)\n", path, range );
1713   funcs->ext.p_glDeletePathsNV( path, range );
1714 }
1715
1716 static void WINAPI wine_glDeletePerfMonitorsAMD( GLsizei n, GLuint* monitors ) {
1717   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1718   TRACE("(%d, %p)\n", n, monitors );
1719   funcs->ext.p_glDeletePerfMonitorsAMD( n, monitors );
1720 }
1721
1722 static void WINAPI wine_glDeleteProgram( GLuint program ) {
1723   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1724   TRACE("(%d)\n", program );
1725   funcs->ext.p_glDeleteProgram( program );
1726 }
1727
1728 static void WINAPI wine_glDeleteProgramPipelines( GLsizei n, const GLuint* pipelines ) {
1729   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1730   TRACE("(%d, %p)\n", n, pipelines );
1731   funcs->ext.p_glDeleteProgramPipelines( n, pipelines );
1732 }
1733
1734 static void WINAPI wine_glDeleteProgramsARB( GLsizei n, const GLuint* programs ) {
1735   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1736   TRACE("(%d, %p)\n", n, programs );
1737   funcs->ext.p_glDeleteProgramsARB( n, programs );
1738 }
1739
1740 static void WINAPI wine_glDeleteProgramsNV( GLsizei n, const GLuint* programs ) {
1741   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1742   TRACE("(%d, %p)\n", n, programs );
1743   funcs->ext.p_glDeleteProgramsNV( n, programs );
1744 }
1745
1746 static void WINAPI wine_glDeleteQueries( GLsizei n, const GLuint* ids ) {
1747   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1748   TRACE("(%d, %p)\n", n, ids );
1749   funcs->ext.p_glDeleteQueries( n, ids );
1750 }
1751
1752 static void WINAPI wine_glDeleteQueriesARB( GLsizei n, const GLuint* ids ) {
1753   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1754   TRACE("(%d, %p)\n", n, ids );
1755   funcs->ext.p_glDeleteQueriesARB( n, ids );
1756 }
1757
1758 static void WINAPI wine_glDeleteRenderbuffers( GLsizei n, const GLuint* renderbuffers ) {
1759   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1760   TRACE("(%d, %p)\n", n, renderbuffers );
1761   funcs->ext.p_glDeleteRenderbuffers( n, renderbuffers );
1762 }
1763
1764 static void WINAPI wine_glDeleteRenderbuffersEXT( GLsizei n, const GLuint* renderbuffers ) {
1765   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1766   TRACE("(%d, %p)\n", n, renderbuffers );
1767   funcs->ext.p_glDeleteRenderbuffersEXT( n, renderbuffers );
1768 }
1769
1770 static void WINAPI wine_glDeleteSamplers( GLsizei count, const GLuint* samplers ) {
1771   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1772   TRACE("(%d, %p)\n", count, samplers );
1773   funcs->ext.p_glDeleteSamplers( count, samplers );
1774 }
1775
1776 static void WINAPI wine_glDeleteShader( GLuint shader ) {
1777   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1778   TRACE("(%d)\n", shader );
1779   funcs->ext.p_glDeleteShader( shader );
1780 }
1781
1782 static void WINAPI wine_glDeleteSync( GLvoid* sync ) {
1783   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1784   TRACE("(%p)\n", sync );
1785   funcs->ext.p_glDeleteSync( sync );
1786 }
1787
1788 static void WINAPI wine_glDeleteTexturesEXT( GLsizei n, const GLuint* textures ) {
1789   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1790   TRACE("(%d, %p)\n", n, textures );
1791   funcs->ext.p_glDeleteTexturesEXT( n, textures );
1792 }
1793
1794 static void WINAPI wine_glDeleteTransformFeedbacks( GLsizei n, const GLuint* ids ) {
1795   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1796   TRACE("(%d, %p)\n", n, ids );
1797   funcs->ext.p_glDeleteTransformFeedbacks( n, ids );
1798 }
1799
1800 static void WINAPI wine_glDeleteTransformFeedbacksNV( GLsizei n, const GLuint* ids ) {
1801   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1802   TRACE("(%d, %p)\n", n, ids );
1803   funcs->ext.p_glDeleteTransformFeedbacksNV( n, ids );
1804 }
1805
1806 static void WINAPI wine_glDeleteVertexArrays( GLsizei n, const GLuint* arrays ) {
1807   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1808   TRACE("(%d, %p)\n", n, arrays );
1809   funcs->ext.p_glDeleteVertexArrays( n, arrays );
1810 }
1811
1812 static void WINAPI wine_glDeleteVertexArraysAPPLE( GLsizei n, const GLuint* arrays ) {
1813   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1814   TRACE("(%d, %p)\n", n, arrays );
1815   funcs->ext.p_glDeleteVertexArraysAPPLE( n, arrays );
1816 }
1817
1818 static void WINAPI wine_glDeleteVertexShaderEXT( GLuint id ) {
1819   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1820   TRACE("(%d)\n", id );
1821   funcs->ext.p_glDeleteVertexShaderEXT( id );
1822 }
1823
1824 static void WINAPI wine_glDepthBoundsEXT( GLclampd zmin, GLclampd zmax ) {
1825   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1826   TRACE("(%f, %f)\n", zmin, zmax );
1827   funcs->ext.p_glDepthBoundsEXT( zmin, zmax );
1828 }
1829
1830 static void WINAPI wine_glDepthBoundsdNV( GLdouble zmin, GLdouble zmax ) {
1831   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1832   TRACE("(%f, %f)\n", zmin, zmax );
1833   funcs->ext.p_glDepthBoundsdNV( zmin, zmax );
1834 }
1835
1836 static void WINAPI wine_glDepthRangeArrayv( GLuint first, GLsizei count, const GLdouble* v ) {
1837   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1838   TRACE("(%d, %d, %p)\n", first, count, v );
1839   funcs->ext.p_glDepthRangeArrayv( first, count, v );
1840 }
1841
1842 static void WINAPI wine_glDepthRangeIndexed( GLuint index, GLdouble n, GLdouble f ) {
1843   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1844   TRACE("(%d, %f, %f)\n", index, n, f );
1845   funcs->ext.p_glDepthRangeIndexed( index, n, f );
1846 }
1847
1848 static void WINAPI wine_glDepthRangedNV( GLdouble zNear, GLdouble zFar ) {
1849   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1850   TRACE("(%f, %f)\n", zNear, zFar );
1851   funcs->ext.p_glDepthRangedNV( zNear, zFar );
1852 }
1853
1854 static void WINAPI wine_glDepthRangef( GLfloat n, GLfloat f ) {
1855   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1856   TRACE("(%f, %f)\n", n, f );
1857   funcs->ext.p_glDepthRangef( n, f );
1858 }
1859
1860 static void WINAPI wine_glDetachObjectARB( unsigned int containerObj, unsigned int attachedObj ) {
1861   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1862   TRACE("(%d, %d)\n", containerObj, attachedObj );
1863   funcs->ext.p_glDetachObjectARB( containerObj, attachedObj );
1864 }
1865
1866 static void WINAPI wine_glDetachShader( GLuint program, GLuint shader ) {
1867   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1868   TRACE("(%d, %d)\n", program, shader );
1869   funcs->ext.p_glDetachShader( program, shader );
1870 }
1871
1872 static void WINAPI wine_glDetailTexFuncSGIS( GLenum target, GLsizei n, const GLfloat* points ) {
1873   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1874   TRACE("(%d, %d, %p)\n", target, n, points );
1875   funcs->ext.p_glDetailTexFuncSGIS( target, n, points );
1876 }
1877
1878 static void WINAPI wine_glDisableClientStateIndexedEXT( GLenum array, GLuint index ) {
1879   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1880   TRACE("(%d, %d)\n", array, index );
1881   funcs->ext.p_glDisableClientStateIndexedEXT( array, index );
1882 }
1883
1884 static void WINAPI wine_glDisableIndexedEXT( GLenum target, GLuint index ) {
1885   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1886   TRACE("(%d, %d)\n", target, index );
1887   funcs->ext.p_glDisableIndexedEXT( target, index );
1888 }
1889
1890 static void WINAPI wine_glDisableVariantClientStateEXT( GLuint id ) {
1891   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1892   TRACE("(%d)\n", id );
1893   funcs->ext.p_glDisableVariantClientStateEXT( id );
1894 }
1895
1896 static void WINAPI wine_glDisableVertexAttribAPPLE( GLuint index, GLenum pname ) {
1897   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1898   TRACE("(%d, %d)\n", index, pname );
1899   funcs->ext.p_glDisableVertexAttribAPPLE( index, pname );
1900 }
1901
1902 static void WINAPI wine_glDisableVertexAttribArray( GLuint index ) {
1903   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1904   TRACE("(%d)\n", index );
1905   funcs->ext.p_glDisableVertexAttribArray( index );
1906 }
1907
1908 static void WINAPI wine_glDisableVertexAttribArrayARB( GLuint index ) {
1909   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1910   TRACE("(%d)\n", index );
1911   funcs->ext.p_glDisableVertexAttribArrayARB( index );
1912 }
1913
1914 static void WINAPI wine_glDisablei( GLenum target, GLuint index ) {
1915   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1916   TRACE("(%d, %d)\n", target, index );
1917   funcs->ext.p_glDisablei( target, index );
1918 }
1919
1920 static void WINAPI wine_glDispatchCompute( GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z ) {
1921   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1922   TRACE("(%d, %d, %d)\n", num_groups_x, num_groups_y, num_groups_z );
1923   funcs->ext.p_glDispatchCompute( num_groups_x, num_groups_y, num_groups_z );
1924 }
1925
1926 static void WINAPI wine_glDispatchComputeIndirect( INT_PTR indirect ) {
1927   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1928   TRACE("(%ld)\n", indirect );
1929   funcs->ext.p_glDispatchComputeIndirect( indirect );
1930 }
1931
1932 static void WINAPI wine_glDrawArraysEXT( GLenum mode, GLint first, GLsizei count ) {
1933   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1934   TRACE("(%d, %d, %d)\n", mode, first, count );
1935   funcs->ext.p_glDrawArraysEXT( mode, first, count );
1936 }
1937
1938 static void WINAPI wine_glDrawArraysIndirect( GLenum mode, const GLvoid* indirect ) {
1939   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1940   TRACE("(%d, %p)\n", mode, indirect );
1941   funcs->ext.p_glDrawArraysIndirect( mode, indirect );
1942 }
1943
1944 static void WINAPI wine_glDrawArraysInstanced( GLenum mode, GLint first, GLsizei count, GLsizei instancecount ) {
1945   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1946   TRACE("(%d, %d, %d, %d)\n", mode, first, count, instancecount );
1947   funcs->ext.p_glDrawArraysInstanced( mode, first, count, instancecount );
1948 }
1949
1950 static void WINAPI wine_glDrawArraysInstancedARB( GLenum mode, GLint first, GLsizei count, GLsizei primcount ) {
1951   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1952   TRACE("(%d, %d, %d, %d)\n", mode, first, count, primcount );
1953   funcs->ext.p_glDrawArraysInstancedARB( mode, first, count, primcount );
1954 }
1955
1956 static void WINAPI wine_glDrawArraysInstancedBaseInstance( GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance ) {
1957   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1958   TRACE("(%d, %d, %d, %d, %d)\n", mode, first, count, instancecount, baseinstance );
1959   funcs->ext.p_glDrawArraysInstancedBaseInstance( mode, first, count, instancecount, baseinstance );
1960 }
1961
1962 static void WINAPI wine_glDrawArraysInstancedEXT( GLenum mode, GLint start, GLsizei count, GLsizei primcount ) {
1963   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1964   TRACE("(%d, %d, %d, %d)\n", mode, start, count, primcount );
1965   funcs->ext.p_glDrawArraysInstancedEXT( mode, start, count, primcount );
1966 }
1967
1968 static void WINAPI wine_glDrawBufferRegion( GLenum region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest ) {
1969   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1970   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", region, x, y, width, height, xDest, yDest );
1971   funcs->ext.p_glDrawBufferRegion( region, x, y, width, height, xDest, yDest );
1972 }
1973
1974 static void WINAPI wine_glDrawBuffers( GLsizei n, const GLenum* bufs ) {
1975   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1976   TRACE("(%d, %p)\n", n, bufs );
1977   funcs->ext.p_glDrawBuffers( n, bufs );
1978 }
1979
1980 static void WINAPI wine_glDrawBuffersARB( GLsizei n, const GLenum* bufs ) {
1981   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1982   TRACE("(%d, %p)\n", n, bufs );
1983   funcs->ext.p_glDrawBuffersARB( n, bufs );
1984 }
1985
1986 static void WINAPI wine_glDrawBuffersATI( GLsizei n, const GLenum* bufs ) {
1987   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1988   TRACE("(%d, %p)\n", n, bufs );
1989   funcs->ext.p_glDrawBuffersATI( n, bufs );
1990 }
1991
1992 static void WINAPI wine_glDrawElementArrayAPPLE( GLenum mode, GLint first, GLsizei count ) {
1993   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
1994   TRACE("(%d, %d, %d)\n", mode, first, count );
1995   funcs->ext.p_glDrawElementArrayAPPLE( mode, first, count );
1996 }
1997
1998 static void WINAPI wine_glDrawElementArrayATI( GLenum mode, GLsizei count ) {
1999   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2000   TRACE("(%d, %d)\n", mode, count );
2001   funcs->ext.p_glDrawElementArrayATI( mode, count );
2002 }
2003
2004 static void WINAPI wine_glDrawElementsBaseVertex( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLint basevertex ) {
2005   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2006   TRACE("(%d, %d, %d, %p, %d)\n", mode, count, type, indices, basevertex );
2007   funcs->ext.p_glDrawElementsBaseVertex( mode, count, type, indices, basevertex );
2008 }
2009
2010 static void WINAPI wine_glDrawElementsIndirect( GLenum mode, GLenum type, const GLvoid* indirect ) {
2011   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2012   TRACE("(%d, %d, %p)\n", mode, type, indirect );
2013   funcs->ext.p_glDrawElementsIndirect( mode, type, indirect );
2014 }
2015
2016 static void WINAPI wine_glDrawElementsInstanced( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instancecount ) {
2017   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2018   TRACE("(%d, %d, %d, %p, %d)\n", mode, count, type, indices, instancecount );
2019   funcs->ext.p_glDrawElementsInstanced( mode, count, type, indices, instancecount );
2020 }
2021
2022 static void WINAPI wine_glDrawElementsInstancedARB( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei primcount ) {
2023   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2024   TRACE("(%d, %d, %d, %p, %d)\n", mode, count, type, indices, primcount );
2025   funcs->ext.p_glDrawElementsInstancedARB( mode, count, type, indices, primcount );
2026 }
2027
2028 static void WINAPI wine_glDrawElementsInstancedBaseInstance( GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei instancecount, GLuint baseinstance ) {
2029   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2030   TRACE("(%d, %d, %d, %p, %d, %d)\n", mode, count, type, indices, instancecount, baseinstance );
2031   funcs->ext.p_glDrawElementsInstancedBaseInstance( mode, count, type, indices, instancecount, baseinstance );
2032 }
2033
2034 static void WINAPI wine_glDrawElementsInstancedBaseVertex( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instancecount, GLint basevertex ) {
2035   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2036   TRACE("(%d, %d, %d, %p, %d, %d)\n", mode, count, type, indices, instancecount, basevertex );
2037   funcs->ext.p_glDrawElementsInstancedBaseVertex( mode, count, type, indices, instancecount, basevertex );
2038 }
2039
2040 static void WINAPI wine_glDrawElementsInstancedBaseVertexBaseInstance( GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance ) {
2041   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2042   TRACE("(%d, %d, %d, %p, %d, %d, %d)\n", mode, count, type, indices, instancecount, basevertex, baseinstance );
2043   funcs->ext.p_glDrawElementsInstancedBaseVertexBaseInstance( mode, count, type, indices, instancecount, basevertex, baseinstance );
2044 }
2045
2046 static void WINAPI wine_glDrawElementsInstancedEXT( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei primcount ) {
2047   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2048   TRACE("(%d, %d, %d, %p, %d)\n", mode, count, type, indices, primcount );
2049   funcs->ext.p_glDrawElementsInstancedEXT( mode, count, type, indices, primcount );
2050 }
2051
2052 static void WINAPI wine_glDrawMeshArraysSUN( GLenum mode, GLint first, GLsizei count, GLsizei width ) {
2053   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2054   TRACE("(%d, %d, %d, %d)\n", mode, first, count, width );
2055   funcs->ext.p_glDrawMeshArraysSUN( mode, first, count, width );
2056 }
2057
2058 static void WINAPI wine_glDrawRangeElementArrayAPPLE( GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count ) {
2059   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2060   TRACE("(%d, %d, %d, %d, %d)\n", mode, start, end, first, count );
2061   funcs->ext.p_glDrawRangeElementArrayAPPLE( mode, start, end, first, count );
2062 }
2063
2064 static void WINAPI wine_glDrawRangeElementArrayATI( GLenum mode, GLuint start, GLuint end, GLsizei count ) {
2065   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2066   TRACE("(%d, %d, %d, %d)\n", mode, start, end, count );
2067   funcs->ext.p_glDrawRangeElementArrayATI( mode, start, end, count );
2068 }
2069
2070 static void WINAPI wine_glDrawRangeElements( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices ) {
2071   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2072   TRACE("(%d, %d, %d, %d, %d, %p)\n", mode, start, end, count, type, indices );
2073   funcs->ext.p_glDrawRangeElements( mode, start, end, count, type, indices );
2074 }
2075
2076 static void WINAPI wine_glDrawRangeElementsBaseVertex( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices, GLint basevertex ) {
2077   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2078   TRACE("(%d, %d, %d, %d, %d, %p, %d)\n", mode, start, end, count, type, indices, basevertex );
2079   funcs->ext.p_glDrawRangeElementsBaseVertex( mode, start, end, count, type, indices, basevertex );
2080 }
2081
2082 static void WINAPI wine_glDrawRangeElementsEXT( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices ) {
2083   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2084   TRACE("(%d, %d, %d, %d, %d, %p)\n", mode, start, end, count, type, indices );
2085   funcs->ext.p_glDrawRangeElementsEXT( mode, start, end, count, type, indices );
2086 }
2087
2088 static void WINAPI wine_glDrawTransformFeedback( GLenum mode, GLuint id ) {
2089   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2090   TRACE("(%d, %d)\n", mode, id );
2091   funcs->ext.p_glDrawTransformFeedback( mode, id );
2092 }
2093
2094 static void WINAPI wine_glDrawTransformFeedbackInstanced( GLenum mode, GLuint id, GLsizei instancecount ) {
2095   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2096   TRACE("(%d, %d, %d)\n", mode, id, instancecount );
2097   funcs->ext.p_glDrawTransformFeedbackInstanced( mode, id, instancecount );
2098 }
2099
2100 static void WINAPI wine_glDrawTransformFeedbackNV( GLenum mode, GLuint id ) {
2101   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2102   TRACE("(%d, %d)\n", mode, id );
2103   funcs->ext.p_glDrawTransformFeedbackNV( mode, id );
2104 }
2105
2106 static void WINAPI wine_glDrawTransformFeedbackStream( GLenum mode, GLuint id, GLuint stream ) {
2107   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2108   TRACE("(%d, %d, %d)\n", mode, id, stream );
2109   funcs->ext.p_glDrawTransformFeedbackStream( mode, id, stream );
2110 }
2111
2112 static void WINAPI wine_glDrawTransformFeedbackStreamInstanced( GLenum mode, GLuint id, GLuint stream, GLsizei instancecount ) {
2113   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2114   TRACE("(%d, %d, %d, %d)\n", mode, id, stream, instancecount );
2115   funcs->ext.p_glDrawTransformFeedbackStreamInstanced( mode, id, stream, instancecount );
2116 }
2117
2118 static void WINAPI wine_glEdgeFlagFormatNV( GLsizei stride ) {
2119   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2120   TRACE("(%d)\n", stride );
2121   funcs->ext.p_glEdgeFlagFormatNV( stride );
2122 }
2123
2124 static void WINAPI wine_glEdgeFlagPointerEXT( GLsizei stride, GLsizei count, const GLboolean* pointer ) {
2125   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2126   TRACE("(%d, %d, %p)\n", stride, count, pointer );
2127   funcs->ext.p_glEdgeFlagPointerEXT( stride, count, pointer );
2128 }
2129
2130 static void WINAPI wine_glEdgeFlagPointerListIBM( GLint stride, const GLboolean** pointer, GLint ptrstride ) {
2131   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2132   TRACE("(%d, %p, %d)\n", stride, pointer, ptrstride );
2133   funcs->ext.p_glEdgeFlagPointerListIBM( stride, pointer, ptrstride );
2134 }
2135
2136 static void WINAPI wine_glElementPointerAPPLE( GLenum type, const GLvoid* pointer ) {
2137   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2138   TRACE("(%d, %p)\n", type, pointer );
2139   funcs->ext.p_glElementPointerAPPLE( type, pointer );
2140 }
2141
2142 static void WINAPI wine_glElementPointerATI( GLenum type, const GLvoid* pointer ) {
2143   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2144   TRACE("(%d, %p)\n", type, pointer );
2145   funcs->ext.p_glElementPointerATI( type, pointer );
2146 }
2147
2148 static void WINAPI wine_glEnableClientStateIndexedEXT( GLenum array, GLuint index ) {
2149   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2150   TRACE("(%d, %d)\n", array, index );
2151   funcs->ext.p_glEnableClientStateIndexedEXT( array, index );
2152 }
2153
2154 static void WINAPI wine_glEnableIndexedEXT( GLenum target, GLuint index ) {
2155   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2156   TRACE("(%d, %d)\n", target, index );
2157   funcs->ext.p_glEnableIndexedEXT( target, index );
2158 }
2159
2160 static void WINAPI wine_glEnableVariantClientStateEXT( GLuint id ) {
2161   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2162   TRACE("(%d)\n", id );
2163   funcs->ext.p_glEnableVariantClientStateEXT( id );
2164 }
2165
2166 static void WINAPI wine_glEnableVertexAttribAPPLE( GLuint index, GLenum pname ) {
2167   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2168   TRACE("(%d, %d)\n", index, pname );
2169   funcs->ext.p_glEnableVertexAttribAPPLE( index, pname );
2170 }
2171
2172 static void WINAPI wine_glEnableVertexAttribArray( GLuint index ) {
2173   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2174   TRACE("(%d)\n", index );
2175   funcs->ext.p_glEnableVertexAttribArray( index );
2176 }
2177
2178 static void WINAPI wine_glEnableVertexAttribArrayARB( GLuint index ) {
2179   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2180   TRACE("(%d)\n", index );
2181   funcs->ext.p_glEnableVertexAttribArrayARB( index );
2182 }
2183
2184 static void WINAPI wine_glEnablei( GLenum target, GLuint index ) {
2185   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2186   TRACE("(%d, %d)\n", target, index );
2187   funcs->ext.p_glEnablei( target, index );
2188 }
2189
2190 static void WINAPI wine_glEndConditionalRender( void ) {
2191   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2192   TRACE("()\n");
2193   funcs->ext.p_glEndConditionalRender( );
2194 }
2195
2196 static void WINAPI wine_glEndConditionalRenderNV( void ) {
2197   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2198   TRACE("()\n");
2199   funcs->ext.p_glEndConditionalRenderNV( );
2200 }
2201
2202 static void WINAPI wine_glEndFragmentShaderATI( void ) {
2203   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2204   TRACE("()\n");
2205   funcs->ext.p_glEndFragmentShaderATI( );
2206 }
2207
2208 static void WINAPI wine_glEndOcclusionQueryNV( void ) {
2209   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2210   TRACE("()\n");
2211   funcs->ext.p_glEndOcclusionQueryNV( );
2212 }
2213
2214 static void WINAPI wine_glEndPerfMonitorAMD( GLuint monitor ) {
2215   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2216   TRACE("(%d)\n", monitor );
2217   funcs->ext.p_glEndPerfMonitorAMD( monitor );
2218 }
2219
2220 static void WINAPI wine_glEndQuery( GLenum target ) {
2221   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2222   TRACE("(%d)\n", target );
2223   funcs->ext.p_glEndQuery( target );
2224 }
2225
2226 static void WINAPI wine_glEndQueryARB( GLenum target ) {
2227   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2228   TRACE("(%d)\n", target );
2229   funcs->ext.p_glEndQueryARB( target );
2230 }
2231
2232 static void WINAPI wine_glEndQueryIndexed( GLenum target, GLuint index ) {
2233   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2234   TRACE("(%d, %d)\n", target, index );
2235   funcs->ext.p_glEndQueryIndexed( target, index );
2236 }
2237
2238 static void WINAPI wine_glEndTransformFeedback( void ) {
2239   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2240   TRACE("()\n");
2241   funcs->ext.p_glEndTransformFeedback( );
2242 }
2243
2244 static void WINAPI wine_glEndTransformFeedbackEXT( void ) {
2245   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2246   TRACE("()\n");
2247   funcs->ext.p_glEndTransformFeedbackEXT( );
2248 }
2249
2250 static void WINAPI wine_glEndTransformFeedbackNV( void ) {
2251   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2252   TRACE("()\n");
2253   funcs->ext.p_glEndTransformFeedbackNV( );
2254 }
2255
2256 static void WINAPI wine_glEndVertexShaderEXT( void ) {
2257   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2258   TRACE("()\n");
2259   funcs->ext.p_glEndVertexShaderEXT( );
2260 }
2261
2262 static void WINAPI wine_glEndVideoCaptureNV( GLuint video_capture_slot ) {
2263   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2264   TRACE("(%d)\n", video_capture_slot );
2265   funcs->ext.p_glEndVideoCaptureNV( video_capture_slot );
2266 }
2267
2268 static void WINAPI wine_glEvalMapsNV( GLenum target, GLenum mode ) {
2269   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2270   TRACE("(%d, %d)\n", target, mode );
2271   funcs->ext.p_glEvalMapsNV( target, mode );
2272 }
2273
2274 static void WINAPI wine_glExecuteProgramNV( GLenum target, GLuint id, const GLfloat* params ) {
2275   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2276   TRACE("(%d, %d, %p)\n", target, id, params );
2277   funcs->ext.p_glExecuteProgramNV( target, id, params );
2278 }
2279
2280 static void WINAPI wine_glExtractComponentEXT( GLuint res, GLuint src, GLuint num ) {
2281   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2282   TRACE("(%d, %d, %d)\n", res, src, num );
2283   funcs->ext.p_glExtractComponentEXT( res, src, num );
2284 }
2285
2286 static GLvoid* WINAPI wine_glFenceSync( GLenum condition, GLbitfield flags ) {
2287   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2288   TRACE("(%d, %d)\n", condition, flags );
2289   return funcs->ext.p_glFenceSync( condition, flags );
2290 }
2291
2292 static void WINAPI wine_glFinalCombinerInputNV( GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage ) {
2293   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2294   TRACE("(%d, %d, %d, %d)\n", variable, input, mapping, componentUsage );
2295   funcs->ext.p_glFinalCombinerInputNV( variable, input, mapping, componentUsage );
2296 }
2297
2298 static GLint WINAPI wine_glFinishAsyncSGIX( GLuint* markerp ) {
2299   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2300   TRACE("(%p)\n", markerp );
2301   return funcs->ext.p_glFinishAsyncSGIX( markerp );
2302 }
2303
2304 static void WINAPI wine_glFinishFenceAPPLE( GLuint fence ) {
2305   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2306   TRACE("(%d)\n", fence );
2307   funcs->ext.p_glFinishFenceAPPLE( fence );
2308 }
2309
2310 static void WINAPI wine_glFinishFenceNV( GLuint fence ) {
2311   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2312   TRACE("(%d)\n", fence );
2313   funcs->ext.p_glFinishFenceNV( fence );
2314 }
2315
2316 static void WINAPI wine_glFinishObjectAPPLE( GLenum object, GLint name ) {
2317   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2318   TRACE("(%d, %d)\n", object, name );
2319   funcs->ext.p_glFinishObjectAPPLE( object, name );
2320 }
2321
2322 static void WINAPI wine_glFinishTextureSUNX( void ) {
2323   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2324   TRACE("()\n");
2325   funcs->ext.p_glFinishTextureSUNX( );
2326 }
2327
2328 static void WINAPI wine_glFlushMappedBufferRange( GLenum target, INT_PTR offset, INT_PTR length ) {
2329   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2330   TRACE("(%d, %ld, %ld)\n", target, offset, length );
2331   funcs->ext.p_glFlushMappedBufferRange( target, offset, length );
2332 }
2333
2334 static void WINAPI wine_glFlushMappedBufferRangeAPPLE( GLenum target, INT_PTR offset, INT_PTR size ) {
2335   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2336   TRACE("(%d, %ld, %ld)\n", target, offset, size );
2337   funcs->ext.p_glFlushMappedBufferRangeAPPLE( target, offset, size );
2338 }
2339
2340 static void WINAPI wine_glFlushMappedNamedBufferRangeEXT( GLuint buffer, INT_PTR offset, INT_PTR length ) {
2341   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2342   TRACE("(%d, %ld, %ld)\n", buffer, offset, length );
2343   funcs->ext.p_glFlushMappedNamedBufferRangeEXT( buffer, offset, length );
2344 }
2345
2346 static void WINAPI wine_glFlushPixelDataRangeNV( GLenum target ) {
2347   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2348   TRACE("(%d)\n", target );
2349   funcs->ext.p_glFlushPixelDataRangeNV( target );
2350 }
2351
2352 static void WINAPI wine_glFlushRasterSGIX( void ) {
2353   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2354   TRACE("()\n");
2355   funcs->ext.p_glFlushRasterSGIX( );
2356 }
2357
2358 static void WINAPI wine_glFlushVertexArrayRangeAPPLE( GLsizei length, GLvoid* pointer ) {
2359   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2360   TRACE("(%d, %p)\n", length, pointer );
2361   funcs->ext.p_glFlushVertexArrayRangeAPPLE( length, pointer );
2362 }
2363
2364 static void WINAPI wine_glFlushVertexArrayRangeNV( void ) {
2365   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2366   TRACE("()\n");
2367   funcs->ext.p_glFlushVertexArrayRangeNV( );
2368 }
2369
2370 static void WINAPI wine_glFogCoordFormatNV( GLenum type, GLsizei stride ) {
2371   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2372   TRACE("(%d, %d)\n", type, stride );
2373   funcs->ext.p_glFogCoordFormatNV( type, stride );
2374 }
2375
2376 static void WINAPI wine_glFogCoordPointer( GLenum type, GLsizei stride, const GLvoid* pointer ) {
2377   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2378   TRACE("(%d, %d, %p)\n", type, stride, pointer );
2379   funcs->ext.p_glFogCoordPointer( type, stride, pointer );
2380 }
2381
2382 static void WINAPI wine_glFogCoordPointerEXT( GLenum type, GLsizei stride, const GLvoid* pointer ) {
2383   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2384   TRACE("(%d, %d, %p)\n", type, stride, pointer );
2385   funcs->ext.p_glFogCoordPointerEXT( type, stride, pointer );
2386 }
2387
2388 static void WINAPI wine_glFogCoordPointerListIBM( GLenum type, GLint stride, const GLvoid** pointer, GLint ptrstride ) {
2389   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2390   TRACE("(%d, %d, %p, %d)\n", type, stride, pointer, ptrstride );
2391   funcs->ext.p_glFogCoordPointerListIBM( type, stride, pointer, ptrstride );
2392 }
2393
2394 static void WINAPI wine_glFogCoordd( GLdouble coord ) {
2395   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2396   TRACE("(%f)\n", coord );
2397   funcs->ext.p_glFogCoordd( coord );
2398 }
2399
2400 static void WINAPI wine_glFogCoorddEXT( GLdouble coord ) {
2401   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2402   TRACE("(%f)\n", coord );
2403   funcs->ext.p_glFogCoorddEXT( coord );
2404 }
2405
2406 static void WINAPI wine_glFogCoorddv( const GLdouble* coord ) {
2407   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2408   TRACE("(%p)\n", coord );
2409   funcs->ext.p_glFogCoorddv( coord );
2410 }
2411
2412 static void WINAPI wine_glFogCoorddvEXT( const GLdouble* coord ) {
2413   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2414   TRACE("(%p)\n", coord );
2415   funcs->ext.p_glFogCoorddvEXT( coord );
2416 }
2417
2418 static void WINAPI wine_glFogCoordf( GLfloat coord ) {
2419   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2420   TRACE("(%f)\n", coord );
2421   funcs->ext.p_glFogCoordf( coord );
2422 }
2423
2424 static void WINAPI wine_glFogCoordfEXT( GLfloat coord ) {
2425   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2426   TRACE("(%f)\n", coord );
2427   funcs->ext.p_glFogCoordfEXT( coord );
2428 }
2429
2430 static void WINAPI wine_glFogCoordfv( const GLfloat* coord ) {
2431   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2432   TRACE("(%p)\n", coord );
2433   funcs->ext.p_glFogCoordfv( coord );
2434 }
2435
2436 static void WINAPI wine_glFogCoordfvEXT( const GLfloat* coord ) {
2437   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2438   TRACE("(%p)\n", coord );
2439   funcs->ext.p_glFogCoordfvEXT( coord );
2440 }
2441
2442 static void WINAPI wine_glFogCoordhNV( unsigned short fog ) {
2443   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2444   TRACE("(%d)\n", fog );
2445   funcs->ext.p_glFogCoordhNV( fog );
2446 }
2447
2448 static void WINAPI wine_glFogCoordhvNV( const unsigned short* fog ) {
2449   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2450   TRACE("(%p)\n", fog );
2451   funcs->ext.p_glFogCoordhvNV( fog );
2452 }
2453
2454 static void WINAPI wine_glFogFuncSGIS( GLsizei n, const GLfloat* points ) {
2455   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2456   TRACE("(%d, %p)\n", n, points );
2457   funcs->ext.p_glFogFuncSGIS( n, points );
2458 }
2459
2460 static void WINAPI wine_glFragmentColorMaterialSGIX( GLenum face, GLenum mode ) {
2461   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2462   TRACE("(%d, %d)\n", face, mode );
2463   funcs->ext.p_glFragmentColorMaterialSGIX( face, mode );
2464 }
2465
2466 static void WINAPI wine_glFragmentLightModelfSGIX( GLenum pname, GLfloat param ) {
2467   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2468   TRACE("(%d, %f)\n", pname, param );
2469   funcs->ext.p_glFragmentLightModelfSGIX( pname, param );
2470 }
2471
2472 static void WINAPI wine_glFragmentLightModelfvSGIX( GLenum pname, const GLfloat* params ) {
2473   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2474   TRACE("(%d, %p)\n", pname, params );
2475   funcs->ext.p_glFragmentLightModelfvSGIX( pname, params );
2476 }
2477
2478 static void WINAPI wine_glFragmentLightModeliSGIX( GLenum pname, GLint param ) {
2479   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2480   TRACE("(%d, %d)\n", pname, param );
2481   funcs->ext.p_glFragmentLightModeliSGIX( pname, param );
2482 }
2483
2484 static void WINAPI wine_glFragmentLightModelivSGIX( GLenum pname, const GLint* params ) {
2485   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2486   TRACE("(%d, %p)\n", pname, params );
2487   funcs->ext.p_glFragmentLightModelivSGIX( pname, params );
2488 }
2489
2490 static void WINAPI wine_glFragmentLightfSGIX( GLenum light, GLenum pname, GLfloat param ) {
2491   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2492   TRACE("(%d, %d, %f)\n", light, pname, param );
2493   funcs->ext.p_glFragmentLightfSGIX( light, pname, param );
2494 }
2495
2496 static void WINAPI wine_glFragmentLightfvSGIX( GLenum light, GLenum pname, const GLfloat* params ) {
2497   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2498   TRACE("(%d, %d, %p)\n", light, pname, params );
2499   funcs->ext.p_glFragmentLightfvSGIX( light, pname, params );
2500 }
2501
2502 static void WINAPI wine_glFragmentLightiSGIX( GLenum light, GLenum pname, GLint param ) {
2503   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2504   TRACE("(%d, %d, %d)\n", light, pname, param );
2505   funcs->ext.p_glFragmentLightiSGIX( light, pname, param );
2506 }
2507
2508 static void WINAPI wine_glFragmentLightivSGIX( GLenum light, GLenum pname, const GLint* params ) {
2509   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2510   TRACE("(%d, %d, %p)\n", light, pname, params );
2511   funcs->ext.p_glFragmentLightivSGIX( light, pname, params );
2512 }
2513
2514 static void WINAPI wine_glFragmentMaterialfSGIX( GLenum face, GLenum pname, GLfloat param ) {
2515   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2516   TRACE("(%d, %d, %f)\n", face, pname, param );
2517   funcs->ext.p_glFragmentMaterialfSGIX( face, pname, param );
2518 }
2519
2520 static void WINAPI wine_glFragmentMaterialfvSGIX( GLenum face, GLenum pname, const GLfloat* params ) {
2521   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2522   TRACE("(%d, %d, %p)\n", face, pname, params );
2523   funcs->ext.p_glFragmentMaterialfvSGIX( face, pname, params );
2524 }
2525
2526 static void WINAPI wine_glFragmentMaterialiSGIX( GLenum face, GLenum pname, GLint param ) {
2527   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2528   TRACE("(%d, %d, %d)\n", face, pname, param );
2529   funcs->ext.p_glFragmentMaterialiSGIX( face, pname, param );
2530 }
2531
2532 static void WINAPI wine_glFragmentMaterialivSGIX( GLenum face, GLenum pname, const GLint* params ) {
2533   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2534   TRACE("(%d, %d, %p)\n", face, pname, params );
2535   funcs->ext.p_glFragmentMaterialivSGIX( face, pname, params );
2536 }
2537
2538 static void WINAPI wine_glFrameTerminatorGREMEDY( void ) {
2539   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2540   TRACE("()\n");
2541   funcs->ext.p_glFrameTerminatorGREMEDY( );
2542 }
2543
2544 static void WINAPI wine_glFrameZoomSGIX( GLint factor ) {
2545   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2546   TRACE("(%d)\n", factor );
2547   funcs->ext.p_glFrameZoomSGIX( factor );
2548 }
2549
2550 static void WINAPI wine_glFramebufferDrawBufferEXT( GLuint framebuffer, GLenum mode ) {
2551   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2552   TRACE("(%d, %d)\n", framebuffer, mode );
2553   funcs->ext.p_glFramebufferDrawBufferEXT( framebuffer, mode );
2554 }
2555
2556 static void WINAPI wine_glFramebufferDrawBuffersEXT( GLuint framebuffer, GLsizei n, const GLenum* bufs ) {
2557   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2558   TRACE("(%d, %d, %p)\n", framebuffer, n, bufs );
2559   funcs->ext.p_glFramebufferDrawBuffersEXT( framebuffer, n, bufs );
2560 }
2561
2562 static void WINAPI wine_glFramebufferParameteri( GLenum target, GLenum pname, GLint param ) {
2563   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2564   TRACE("(%d, %d, %d)\n", target, pname, param );
2565   funcs->ext.p_glFramebufferParameteri( target, pname, param );
2566 }
2567
2568 static void WINAPI wine_glFramebufferReadBufferEXT( GLuint framebuffer, GLenum mode ) {
2569   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2570   TRACE("(%d, %d)\n", framebuffer, mode );
2571   funcs->ext.p_glFramebufferReadBufferEXT( framebuffer, mode );
2572 }
2573
2574 static void WINAPI wine_glFramebufferRenderbuffer( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) {
2575   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2576   TRACE("(%d, %d, %d, %d)\n", target, attachment, renderbuffertarget, renderbuffer );
2577   funcs->ext.p_glFramebufferRenderbuffer( target, attachment, renderbuffertarget, renderbuffer );
2578 }
2579
2580 static void WINAPI wine_glFramebufferRenderbufferEXT( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) {
2581   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2582   TRACE("(%d, %d, %d, %d)\n", target, attachment, renderbuffertarget, renderbuffer );
2583   funcs->ext.p_glFramebufferRenderbufferEXT( target, attachment, renderbuffertarget, renderbuffer );
2584 }
2585
2586 static void WINAPI wine_glFramebufferTexture( GLenum target, GLenum attachment, GLuint texture, GLint level ) {
2587   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2588   TRACE("(%d, %d, %d, %d)\n", target, attachment, texture, level );
2589   funcs->ext.p_glFramebufferTexture( target, attachment, texture, level );
2590 }
2591
2592 static void WINAPI wine_glFramebufferTexture1D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
2593   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2594   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level );
2595   funcs->ext.p_glFramebufferTexture1D( target, attachment, textarget, texture, level );
2596 }
2597
2598 static void WINAPI wine_glFramebufferTexture1DEXT( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
2599   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2600   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level );
2601   funcs->ext.p_glFramebufferTexture1DEXT( target, attachment, textarget, texture, level );
2602 }
2603
2604 static void WINAPI wine_glFramebufferTexture2D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
2605   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2606   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level );
2607   funcs->ext.p_glFramebufferTexture2D( target, attachment, textarget, texture, level );
2608 }
2609
2610 static void WINAPI wine_glFramebufferTexture2DEXT( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
2611   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2612   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level );
2613   funcs->ext.p_glFramebufferTexture2DEXT( target, attachment, textarget, texture, level );
2614 }
2615
2616 static void WINAPI wine_glFramebufferTexture3D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset ) {
2617   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2618   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level, zoffset );
2619   funcs->ext.p_glFramebufferTexture3D( target, attachment, textarget, texture, level, zoffset );
2620 }
2621
2622 static void WINAPI wine_glFramebufferTexture3DEXT( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset ) {
2623   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2624   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, attachment, textarget, texture, level, zoffset );
2625   funcs->ext.p_glFramebufferTexture3DEXT( target, attachment, textarget, texture, level, zoffset );
2626 }
2627
2628 static void WINAPI wine_glFramebufferTextureARB( GLenum target, GLenum attachment, GLuint texture, GLint level ) {
2629   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2630   TRACE("(%d, %d, %d, %d)\n", target, attachment, texture, level );
2631   funcs->ext.p_glFramebufferTextureARB( target, attachment, texture, level );
2632 }
2633
2634 static void WINAPI wine_glFramebufferTextureEXT( GLenum target, GLenum attachment, GLuint texture, GLint level ) {
2635   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2636   TRACE("(%d, %d, %d, %d)\n", target, attachment, texture, level );
2637   funcs->ext.p_glFramebufferTextureEXT( target, attachment, texture, level );
2638 }
2639
2640 static void WINAPI wine_glFramebufferTextureFaceARB( GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face ) {
2641   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2642   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, face );
2643   funcs->ext.p_glFramebufferTextureFaceARB( target, attachment, texture, level, face );
2644 }
2645
2646 static void WINAPI wine_glFramebufferTextureFaceEXT( GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face ) {
2647   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2648   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, face );
2649   funcs->ext.p_glFramebufferTextureFaceEXT( target, attachment, texture, level, face );
2650 }
2651
2652 static void WINAPI wine_glFramebufferTextureLayer( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) {
2653   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2654   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, layer );
2655   funcs->ext.p_glFramebufferTextureLayer( target, attachment, texture, level, layer );
2656 }
2657
2658 static void WINAPI wine_glFramebufferTextureLayerARB( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) {
2659   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2660   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, layer );
2661   funcs->ext.p_glFramebufferTextureLayerARB( target, attachment, texture, level, layer );
2662 }
2663
2664 static void WINAPI wine_glFramebufferTextureLayerEXT( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) {
2665   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2666   TRACE("(%d, %d, %d, %d, %d)\n", target, attachment, texture, level, layer );
2667   funcs->ext.p_glFramebufferTextureLayerEXT( target, attachment, texture, level, layer );
2668 }
2669
2670 static void WINAPI wine_glFreeObjectBufferATI( GLuint buffer ) {
2671   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2672   TRACE("(%d)\n", buffer );
2673   funcs->ext.p_glFreeObjectBufferATI( buffer );
2674 }
2675
2676 static GLuint WINAPI wine_glGenAsyncMarkersSGIX( GLsizei range ) {
2677   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2678   TRACE("(%d)\n", range );
2679   return funcs->ext.p_glGenAsyncMarkersSGIX( range );
2680 }
2681
2682 static void WINAPI wine_glGenBuffers( GLsizei n, GLuint* buffers ) {
2683   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2684   TRACE("(%d, %p)\n", n, buffers );
2685   funcs->ext.p_glGenBuffers( n, buffers );
2686 }
2687
2688 static void WINAPI wine_glGenBuffersARB( GLsizei n, GLuint* buffers ) {
2689   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2690   TRACE("(%d, %p)\n", n, buffers );
2691   funcs->ext.p_glGenBuffersARB( n, buffers );
2692 }
2693
2694 static void WINAPI wine_glGenFencesAPPLE( GLsizei n, GLuint* fences ) {
2695   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2696   TRACE("(%d, %p)\n", n, fences );
2697   funcs->ext.p_glGenFencesAPPLE( n, fences );
2698 }
2699
2700 static void WINAPI wine_glGenFencesNV( GLsizei n, GLuint* fences ) {
2701   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2702   TRACE("(%d, %p)\n", n, fences );
2703   funcs->ext.p_glGenFencesNV( n, fences );
2704 }
2705
2706 static GLuint WINAPI wine_glGenFragmentShadersATI( GLuint range ) {
2707   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2708   TRACE("(%d)\n", range );
2709   return funcs->ext.p_glGenFragmentShadersATI( range );
2710 }
2711
2712 static void WINAPI wine_glGenFramebuffers( GLsizei n, GLuint* framebuffers ) {
2713   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2714   TRACE("(%d, %p)\n", n, framebuffers );
2715   funcs->ext.p_glGenFramebuffers( n, framebuffers );
2716 }
2717
2718 static void WINAPI wine_glGenFramebuffersEXT( GLsizei n, GLuint* framebuffers ) {
2719   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2720   TRACE("(%d, %p)\n", n, framebuffers );
2721   funcs->ext.p_glGenFramebuffersEXT( n, framebuffers );
2722 }
2723
2724 static void WINAPI wine_glGenNamesAMD( GLenum identifier, GLuint num, GLuint* names ) {
2725   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2726   TRACE("(%d, %d, %p)\n", identifier, num, names );
2727   funcs->ext.p_glGenNamesAMD( identifier, num, names );
2728 }
2729
2730 static void WINAPI wine_glGenOcclusionQueriesNV( GLsizei n, GLuint* ids ) {
2731   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2732   TRACE("(%d, %p)\n", n, ids );
2733   funcs->ext.p_glGenOcclusionQueriesNV( n, ids );
2734 }
2735
2736 static GLuint WINAPI wine_glGenPathsNV( GLsizei range ) {
2737   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2738   TRACE("(%d)\n", range );
2739   return funcs->ext.p_glGenPathsNV( range );
2740 }
2741
2742 static void WINAPI wine_glGenPerfMonitorsAMD( GLsizei n, GLuint* monitors ) {
2743   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2744   TRACE("(%d, %p)\n", n, monitors );
2745   funcs->ext.p_glGenPerfMonitorsAMD( n, monitors );
2746 }
2747
2748 static void WINAPI wine_glGenProgramPipelines( GLsizei n, GLuint* pipelines ) {
2749   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2750   TRACE("(%d, %p)\n", n, pipelines );
2751   funcs->ext.p_glGenProgramPipelines( n, pipelines );
2752 }
2753
2754 static void WINAPI wine_glGenProgramsARB( GLsizei n, GLuint* programs ) {
2755   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2756   TRACE("(%d, %p)\n", n, programs );
2757   funcs->ext.p_glGenProgramsARB( n, programs );
2758 }
2759
2760 static void WINAPI wine_glGenProgramsNV( GLsizei n, GLuint* programs ) {
2761   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2762   TRACE("(%d, %p)\n", n, programs );
2763   funcs->ext.p_glGenProgramsNV( n, programs );
2764 }
2765
2766 static void WINAPI wine_glGenQueries( GLsizei n, GLuint* ids ) {
2767   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2768   TRACE("(%d, %p)\n", n, ids );
2769   funcs->ext.p_glGenQueries( n, ids );
2770 }
2771
2772 static void WINAPI wine_glGenQueriesARB( GLsizei n, GLuint* ids ) {
2773   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2774   TRACE("(%d, %p)\n", n, ids );
2775   funcs->ext.p_glGenQueriesARB( n, ids );
2776 }
2777
2778 static void WINAPI wine_glGenRenderbuffers( GLsizei n, GLuint* renderbuffers ) {
2779   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2780   TRACE("(%d, %p)\n", n, renderbuffers );
2781   funcs->ext.p_glGenRenderbuffers( n, renderbuffers );
2782 }
2783
2784 static void WINAPI wine_glGenRenderbuffersEXT( GLsizei n, GLuint* renderbuffers ) {
2785   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2786   TRACE("(%d, %p)\n", n, renderbuffers );
2787   funcs->ext.p_glGenRenderbuffersEXT( n, renderbuffers );
2788 }
2789
2790 static void WINAPI wine_glGenSamplers( GLsizei count, GLuint* samplers ) {
2791   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2792   TRACE("(%d, %p)\n", count, samplers );
2793   funcs->ext.p_glGenSamplers( count, samplers );
2794 }
2795
2796 static GLuint WINAPI wine_glGenSymbolsEXT( GLenum datatype, GLenum storagetype, GLenum range, GLuint components ) {
2797   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2798   TRACE("(%d, %d, %d, %d)\n", datatype, storagetype, range, components );
2799   return funcs->ext.p_glGenSymbolsEXT( datatype, storagetype, range, components );
2800 }
2801
2802 static void WINAPI wine_glGenTexturesEXT( GLsizei n, GLuint* textures ) {
2803   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2804   TRACE("(%d, %p)\n", n, textures );
2805   funcs->ext.p_glGenTexturesEXT( n, textures );
2806 }
2807
2808 static void WINAPI wine_glGenTransformFeedbacks( GLsizei n, GLuint* ids ) {
2809   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2810   TRACE("(%d, %p)\n", n, ids );
2811   funcs->ext.p_glGenTransformFeedbacks( n, ids );
2812 }
2813
2814 static void WINAPI wine_glGenTransformFeedbacksNV( GLsizei n, GLuint* ids ) {
2815   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2816   TRACE("(%d, %p)\n", n, ids );
2817   funcs->ext.p_glGenTransformFeedbacksNV( n, ids );
2818 }
2819
2820 static void WINAPI wine_glGenVertexArrays( GLsizei n, GLuint* arrays ) {
2821   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2822   TRACE("(%d, %p)\n", n, arrays );
2823   funcs->ext.p_glGenVertexArrays( n, arrays );
2824 }
2825
2826 static void WINAPI wine_glGenVertexArraysAPPLE( GLsizei n, GLuint* arrays ) {
2827   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2828   TRACE("(%d, %p)\n", n, arrays );
2829   funcs->ext.p_glGenVertexArraysAPPLE( n, arrays );
2830 }
2831
2832 static GLuint WINAPI wine_glGenVertexShadersEXT( GLuint range ) {
2833   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2834   TRACE("(%d)\n", range );
2835   return funcs->ext.p_glGenVertexShadersEXT( range );
2836 }
2837
2838 static void WINAPI wine_glGenerateMipmap( GLenum target ) {
2839   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2840   TRACE("(%d)\n", target );
2841   funcs->ext.p_glGenerateMipmap( target );
2842 }
2843
2844 static void WINAPI wine_glGenerateMipmapEXT( GLenum target ) {
2845   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2846   TRACE("(%d)\n", target );
2847   funcs->ext.p_glGenerateMipmapEXT( target );
2848 }
2849
2850 static void WINAPI wine_glGenerateMultiTexMipmapEXT( GLenum texunit, GLenum target ) {
2851   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2852   TRACE("(%d, %d)\n", texunit, target );
2853   funcs->ext.p_glGenerateMultiTexMipmapEXT( texunit, target );
2854 }
2855
2856 static void WINAPI wine_glGenerateTextureMipmapEXT( GLuint texture, GLenum target ) {
2857   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2858   TRACE("(%d, %d)\n", texture, target );
2859   funcs->ext.p_glGenerateTextureMipmapEXT( texture, target );
2860 }
2861
2862 static void WINAPI wine_glGetActiveAtomicCounterBufferiv( GLuint program, GLuint bufferIndex, GLenum pname, GLint* params ) {
2863   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2864   TRACE("(%d, %d, %d, %p)\n", program, bufferIndex, pname, params );
2865   funcs->ext.p_glGetActiveAtomicCounterBufferiv( program, bufferIndex, pname, params );
2866 }
2867
2868 static void WINAPI wine_glGetActiveAttrib( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLint* size, GLenum* type, char* name ) {
2869   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2870   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
2871   funcs->ext.p_glGetActiveAttrib( program, index, bufSize, length, size, type, name );
2872 }
2873
2874 static void WINAPI wine_glGetActiveAttribARB( unsigned int programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, char* name ) {
2875   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2876   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", programObj, index, maxLength, length, size, type, name );
2877   funcs->ext.p_glGetActiveAttribARB( programObj, index, maxLength, length, size, type, name );
2878 }
2879
2880 static void WINAPI wine_glGetActiveSubroutineName( GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char* name ) {
2881   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2882   TRACE("(%d, %d, %d, %d, %p, %p)\n", program, shadertype, index, bufsize, length, name );
2883   funcs->ext.p_glGetActiveSubroutineName( program, shadertype, index, bufsize, length, name );
2884 }
2885
2886 static void WINAPI wine_glGetActiveSubroutineUniformName( GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char* name ) {
2887   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2888   TRACE("(%d, %d, %d, %d, %p, %p)\n", program, shadertype, index, bufsize, length, name );
2889   funcs->ext.p_glGetActiveSubroutineUniformName( program, shadertype, index, bufsize, length, name );
2890 }
2891
2892 static void WINAPI wine_glGetActiveSubroutineUniformiv( GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint* values ) {
2893   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2894   TRACE("(%d, %d, %d, %d, %p)\n", program, shadertype, index, pname, values );
2895   funcs->ext.p_glGetActiveSubroutineUniformiv( program, shadertype, index, pname, values );
2896 }
2897
2898 static void WINAPI wine_glGetActiveUniform( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLint* size, GLenum* type, char* name ) {
2899   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2900   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
2901   funcs->ext.p_glGetActiveUniform( program, index, bufSize, length, size, type, name );
2902 }
2903
2904 static void WINAPI wine_glGetActiveUniformARB( unsigned int programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, char* name ) {
2905   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2906   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", programObj, index, maxLength, length, size, type, name );
2907   funcs->ext.p_glGetActiveUniformARB( programObj, index, maxLength, length, size, type, name );
2908 }
2909
2910 static void WINAPI wine_glGetActiveUniformBlockName( GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, char* uniformBlockName ) {
2911   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2912   TRACE("(%d, %d, %d, %p, %p)\n", program, uniformBlockIndex, bufSize, length, uniformBlockName );
2913   funcs->ext.p_glGetActiveUniformBlockName( program, uniformBlockIndex, bufSize, length, uniformBlockName );
2914 }
2915
2916 static void WINAPI wine_glGetActiveUniformBlockiv( GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params ) {
2917   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2918   TRACE("(%d, %d, %d, %p)\n", program, uniformBlockIndex, pname, params );
2919   funcs->ext.p_glGetActiveUniformBlockiv( program, uniformBlockIndex, pname, params );
2920 }
2921
2922 static void WINAPI wine_glGetActiveUniformName( GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei* length, char* uniformName ) {
2923   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2924   TRACE("(%d, %d, %d, %p, %p)\n", program, uniformIndex, bufSize, length, uniformName );
2925   funcs->ext.p_glGetActiveUniformName( program, uniformIndex, bufSize, length, uniformName );
2926 }
2927
2928 static void WINAPI wine_glGetActiveUniformsiv( GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params ) {
2929   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2930   TRACE("(%d, %d, %p, %d, %p)\n", program, uniformCount, uniformIndices, pname, params );
2931   funcs->ext.p_glGetActiveUniformsiv( program, uniformCount, uniformIndices, pname, params );
2932 }
2933
2934 static void WINAPI wine_glGetActiveVaryingNV( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, char* name ) {
2935   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2936   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
2937   funcs->ext.p_glGetActiveVaryingNV( program, index, bufSize, length, size, type, name );
2938 }
2939
2940 static void WINAPI wine_glGetArrayObjectfvATI( GLenum array, GLenum pname, GLfloat* params ) {
2941   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2942   TRACE("(%d, %d, %p)\n", array, pname, params );
2943   funcs->ext.p_glGetArrayObjectfvATI( array, pname, params );
2944 }
2945
2946 static void WINAPI wine_glGetArrayObjectivATI( GLenum array, GLenum pname, GLint* params ) {
2947   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2948   TRACE("(%d, %d, %p)\n", array, pname, params );
2949   funcs->ext.p_glGetArrayObjectivATI( array, pname, params );
2950 }
2951
2952 static void WINAPI wine_glGetAttachedObjectsARB( unsigned int containerObj, GLsizei maxCount, GLsizei* count, unsigned int* obj ) {
2953   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2954   TRACE("(%d, %d, %p, %p)\n", containerObj, maxCount, count, obj );
2955   funcs->ext.p_glGetAttachedObjectsARB( containerObj, maxCount, count, obj );
2956 }
2957
2958 static void WINAPI wine_glGetAttachedShaders( GLuint program, GLsizei maxCount, GLsizei* count, GLuint* obj ) {
2959   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2960   TRACE("(%d, %d, %p, %p)\n", program, maxCount, count, obj );
2961   funcs->ext.p_glGetAttachedShaders( program, maxCount, count, obj );
2962 }
2963
2964 static GLint WINAPI wine_glGetAttribLocation( GLuint program, const char* name ) {
2965   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2966   TRACE("(%d, %p)\n", program, name );
2967   return funcs->ext.p_glGetAttribLocation( program, name );
2968 }
2969
2970 static GLint WINAPI wine_glGetAttribLocationARB( unsigned int programObj, const char* name ) {
2971   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2972   TRACE("(%d, %p)\n", programObj, name );
2973   return funcs->ext.p_glGetAttribLocationARB( programObj, name );
2974 }
2975
2976 static void WINAPI wine_glGetBooleanIndexedvEXT( GLenum target, GLuint index, GLboolean* data ) {
2977   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2978   TRACE("(%d, %d, %p)\n", target, index, data );
2979   funcs->ext.p_glGetBooleanIndexedvEXT( target, index, data );
2980 }
2981
2982 static void WINAPI wine_glGetBooleani_v( GLenum target, GLuint index, GLboolean* data ) {
2983   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2984   TRACE("(%d, %d, %p)\n", target, index, data );
2985   funcs->ext.p_glGetBooleani_v( target, index, data );
2986 }
2987
2988 static void WINAPI wine_glGetBufferParameteri64v( GLenum target, GLenum pname, INT64* params ) {
2989   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2990   TRACE("(%d, %d, %p)\n", target, pname, params );
2991   funcs->ext.p_glGetBufferParameteri64v( target, pname, params );
2992 }
2993
2994 static void WINAPI wine_glGetBufferParameteriv( GLenum target, GLenum pname, GLint* params ) {
2995   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
2996   TRACE("(%d, %d, %p)\n", target, pname, params );
2997   funcs->ext.p_glGetBufferParameteriv( target, pname, params );
2998 }
2999
3000 static void WINAPI wine_glGetBufferParameterivARB( GLenum target, GLenum pname, GLint* params ) {
3001   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3002   TRACE("(%d, %d, %p)\n", target, pname, params );
3003   funcs->ext.p_glGetBufferParameterivARB( target, pname, params );
3004 }
3005
3006 static void WINAPI wine_glGetBufferParameterui64vNV( GLenum target, GLenum pname, UINT64* params ) {
3007   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3008   TRACE("(%d, %d, %p)\n", target, pname, params );
3009   funcs->ext.p_glGetBufferParameterui64vNV( target, pname, params );
3010 }
3011
3012 static void WINAPI wine_glGetBufferPointerv( GLenum target, GLenum pname, GLvoid** params ) {
3013   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3014   TRACE("(%d, %d, %p)\n", target, pname, params );
3015   funcs->ext.p_glGetBufferPointerv( target, pname, params );
3016 }
3017
3018 static void WINAPI wine_glGetBufferPointervARB( GLenum target, GLenum pname, GLvoid** params ) {
3019   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3020   TRACE("(%d, %d, %p)\n", target, pname, params );
3021   funcs->ext.p_glGetBufferPointervARB( target, pname, params );
3022 }
3023
3024 static void WINAPI wine_glGetBufferSubData( GLenum target, INT_PTR offset, INT_PTR size, GLvoid* data ) {
3025   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3026   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
3027   funcs->ext.p_glGetBufferSubData( target, offset, size, data );
3028 }
3029
3030 static void WINAPI wine_glGetBufferSubDataARB( GLenum target, INT_PTR offset, INT_PTR size, GLvoid* data ) {
3031   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3032   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
3033   funcs->ext.p_glGetBufferSubDataARB( target, offset, size, data );
3034 }
3035
3036 static void WINAPI wine_glGetColorTable( GLenum target, GLenum format, GLenum type, GLvoid* table ) {
3037   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3038   TRACE("(%d, %d, %d, %p)\n", target, format, type, table );
3039   funcs->ext.p_glGetColorTable( target, format, type, table );
3040 }
3041
3042 static void WINAPI wine_glGetColorTableEXT( GLenum target, GLenum format, GLenum type, GLvoid* data ) {
3043   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3044   TRACE("(%d, %d, %d, %p)\n", target, format, type, data );
3045   funcs->ext.p_glGetColorTableEXT( target, format, type, data );
3046 }
3047
3048 static void WINAPI wine_glGetColorTableParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
3049   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3050   TRACE("(%d, %d, %p)\n", target, pname, params );
3051   funcs->ext.p_glGetColorTableParameterfv( target, pname, params );
3052 }
3053
3054 static void WINAPI wine_glGetColorTableParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
3055   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3056   TRACE("(%d, %d, %p)\n", target, pname, params );
3057   funcs->ext.p_glGetColorTableParameterfvEXT( target, pname, params );
3058 }
3059
3060 static void WINAPI wine_glGetColorTableParameterfvSGI( GLenum target, GLenum pname, GLfloat* params ) {
3061   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3062   TRACE("(%d, %d, %p)\n", target, pname, params );
3063   funcs->ext.p_glGetColorTableParameterfvSGI( target, pname, params );
3064 }
3065
3066 static void WINAPI wine_glGetColorTableParameteriv( GLenum target, GLenum pname, GLint* params ) {
3067   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3068   TRACE("(%d, %d, %p)\n", target, pname, params );
3069   funcs->ext.p_glGetColorTableParameteriv( target, pname, params );
3070 }
3071
3072 static void WINAPI wine_glGetColorTableParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
3073   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3074   TRACE("(%d, %d, %p)\n", target, pname, params );
3075   funcs->ext.p_glGetColorTableParameterivEXT( target, pname, params );
3076 }
3077
3078 static void WINAPI wine_glGetColorTableParameterivSGI( GLenum target, GLenum pname, GLint* params ) {
3079   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3080   TRACE("(%d, %d, %p)\n", target, pname, params );
3081   funcs->ext.p_glGetColorTableParameterivSGI( target, pname, params );
3082 }
3083
3084 static void WINAPI wine_glGetColorTableSGI( GLenum target, GLenum format, GLenum type, GLvoid* table ) {
3085   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3086   TRACE("(%d, %d, %d, %p)\n", target, format, type, table );
3087   funcs->ext.p_glGetColorTableSGI( target, format, type, table );
3088 }
3089
3090 static void WINAPI wine_glGetCombinerInputParameterfvNV( GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat* params ) {
3091   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3092   TRACE("(%d, %d, %d, %d, %p)\n", stage, portion, variable, pname, params );
3093   funcs->ext.p_glGetCombinerInputParameterfvNV( stage, portion, variable, pname, params );
3094 }
3095
3096 static void WINAPI wine_glGetCombinerInputParameterivNV( GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint* params ) {
3097   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3098   TRACE("(%d, %d, %d, %d, %p)\n", stage, portion, variable, pname, params );
3099   funcs->ext.p_glGetCombinerInputParameterivNV( stage, portion, variable, pname, params );
3100 }
3101
3102 static void WINAPI wine_glGetCombinerOutputParameterfvNV( GLenum stage, GLenum portion, GLenum pname, GLfloat* params ) {
3103   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3104   TRACE("(%d, %d, %d, %p)\n", stage, portion, pname, params );
3105   funcs->ext.p_glGetCombinerOutputParameterfvNV( stage, portion, pname, params );
3106 }
3107
3108 static void WINAPI wine_glGetCombinerOutputParameterivNV( GLenum stage, GLenum portion, GLenum pname, GLint* params ) {
3109   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3110   TRACE("(%d, %d, %d, %p)\n", stage, portion, pname, params );
3111   funcs->ext.p_glGetCombinerOutputParameterivNV( stage, portion, pname, params );
3112 }
3113
3114 static void WINAPI wine_glGetCombinerStageParameterfvNV( GLenum stage, GLenum pname, GLfloat* params ) {
3115   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3116   TRACE("(%d, %d, %p)\n", stage, pname, params );
3117   funcs->ext.p_glGetCombinerStageParameterfvNV( stage, pname, params );
3118 }
3119
3120 static void WINAPI wine_glGetCompressedMultiTexImageEXT( GLenum texunit, GLenum target, GLint lod, GLvoid* img ) {
3121   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3122   TRACE("(%d, %d, %d, %p)\n", texunit, target, lod, img );
3123   funcs->ext.p_glGetCompressedMultiTexImageEXT( texunit, target, lod, img );
3124 }
3125
3126 static void WINAPI wine_glGetCompressedTexImage( GLenum target, GLint level, GLvoid* img ) {
3127   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3128   TRACE("(%d, %d, %p)\n", target, level, img );
3129   funcs->ext.p_glGetCompressedTexImage( target, level, img );
3130 }
3131
3132 static void WINAPI wine_glGetCompressedTexImageARB( GLenum target, GLint level, GLvoid* img ) {
3133   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3134   TRACE("(%d, %d, %p)\n", target, level, img );
3135   funcs->ext.p_glGetCompressedTexImageARB( target, level, img );
3136 }
3137
3138 static void WINAPI wine_glGetCompressedTextureImageEXT( GLuint texture, GLenum target, GLint lod, GLvoid* img ) {
3139   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3140   TRACE("(%d, %d, %d, %p)\n", texture, target, lod, img );
3141   funcs->ext.p_glGetCompressedTextureImageEXT( texture, target, lod, img );
3142 }
3143
3144 static void WINAPI wine_glGetConvolutionFilter( GLenum target, GLenum format, GLenum type, GLvoid* image ) {
3145   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3146   TRACE("(%d, %d, %d, %p)\n", target, format, type, image );
3147   funcs->ext.p_glGetConvolutionFilter( target, format, type, image );
3148 }
3149
3150 static void WINAPI wine_glGetConvolutionFilterEXT( GLenum target, GLenum format, GLenum type, GLvoid* image ) {
3151   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3152   TRACE("(%d, %d, %d, %p)\n", target, format, type, image );
3153   funcs->ext.p_glGetConvolutionFilterEXT( target, format, type, image );
3154 }
3155
3156 static void WINAPI wine_glGetConvolutionParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
3157   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3158   TRACE("(%d, %d, %p)\n", target, pname, params );
3159   funcs->ext.p_glGetConvolutionParameterfv( target, pname, params );
3160 }
3161
3162 static void WINAPI wine_glGetConvolutionParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
3163   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3164   TRACE("(%d, %d, %p)\n", target, pname, params );
3165   funcs->ext.p_glGetConvolutionParameterfvEXT( target, pname, params );
3166 }
3167
3168 static void WINAPI wine_glGetConvolutionParameteriv( GLenum target, GLenum pname, GLint* params ) {
3169   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3170   TRACE("(%d, %d, %p)\n", target, pname, params );
3171   funcs->ext.p_glGetConvolutionParameteriv( target, pname, params );
3172 }
3173
3174 static void WINAPI wine_glGetConvolutionParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
3175   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3176   TRACE("(%d, %d, %p)\n", target, pname, params );
3177   funcs->ext.p_glGetConvolutionParameterivEXT( target, pname, params );
3178 }
3179
3180 static GLuint WINAPI wine_glGetDebugMessageLog( GLuint count, GLsizei bufsize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, char* messageLog ) {
3181   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3182   TRACE("(%d, %d, %p, %p, %p, %p, %p, %p)\n", count, bufsize, sources, types, ids, severities, lengths, messageLog );
3183   return funcs->ext.p_glGetDebugMessageLog( count, bufsize, sources, types, ids, severities, lengths, messageLog );
3184 }
3185
3186 static GLuint WINAPI wine_glGetDebugMessageLogAMD( GLuint count, GLsizei bufsize, GLenum* categories, GLuint* severities, GLuint* ids, GLsizei* lengths, char* message ) {
3187   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3188   TRACE("(%d, %d, %p, %p, %p, %p, %p)\n", count, bufsize, categories, severities, ids, lengths, message );
3189   return funcs->ext.p_glGetDebugMessageLogAMD( count, bufsize, categories, severities, ids, lengths, message );
3190 }
3191
3192 static GLuint WINAPI wine_glGetDebugMessageLogARB( GLuint count, GLsizei bufsize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, char* messageLog ) {
3193   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3194   TRACE("(%d, %d, %p, %p, %p, %p, %p, %p)\n", count, bufsize, sources, types, ids, severities, lengths, messageLog );
3195   return funcs->ext.p_glGetDebugMessageLogARB( count, bufsize, sources, types, ids, severities, lengths, messageLog );
3196 }
3197
3198 static void WINAPI wine_glGetDetailTexFuncSGIS( GLenum target, GLfloat* points ) {
3199   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3200   TRACE("(%d, %p)\n", target, points );
3201   funcs->ext.p_glGetDetailTexFuncSGIS( target, points );
3202 }
3203
3204 static void WINAPI wine_glGetDoubleIndexedvEXT( GLenum target, GLuint index, GLdouble* data ) {
3205   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3206   TRACE("(%d, %d, %p)\n", target, index, data );
3207   funcs->ext.p_glGetDoubleIndexedvEXT( target, index, data );
3208 }
3209
3210 static void WINAPI wine_glGetDoublei_v( GLenum target, GLuint index, GLdouble* data ) {
3211   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3212   TRACE("(%d, %d, %p)\n", target, index, data );
3213   funcs->ext.p_glGetDoublei_v( target, index, data );
3214 }
3215
3216 static void WINAPI wine_glGetFenceivNV( GLuint fence, GLenum pname, GLint* params ) {
3217   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3218   TRACE("(%d, %d, %p)\n", fence, pname, params );
3219   funcs->ext.p_glGetFenceivNV( fence, pname, params );
3220 }
3221
3222 static void WINAPI wine_glGetFinalCombinerInputParameterfvNV( GLenum variable, GLenum pname, GLfloat* params ) {
3223   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3224   TRACE("(%d, %d, %p)\n", variable, pname, params );
3225   funcs->ext.p_glGetFinalCombinerInputParameterfvNV( variable, pname, params );
3226 }
3227
3228 static void WINAPI wine_glGetFinalCombinerInputParameterivNV( GLenum variable, GLenum pname, GLint* params ) {
3229   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3230   TRACE("(%d, %d, %p)\n", variable, pname, params );
3231   funcs->ext.p_glGetFinalCombinerInputParameterivNV( variable, pname, params );
3232 }
3233
3234 static void WINAPI wine_glGetFloatIndexedvEXT( GLenum target, GLuint index, GLfloat* data ) {
3235   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3236   TRACE("(%d, %d, %p)\n", target, index, data );
3237   funcs->ext.p_glGetFloatIndexedvEXT( target, index, data );
3238 }
3239
3240 static void WINAPI wine_glGetFloati_v( GLenum target, GLuint index, GLfloat* data ) {
3241   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3242   TRACE("(%d, %d, %p)\n", target, index, data );
3243   funcs->ext.p_glGetFloati_v( target, index, data );
3244 }
3245
3246 static void WINAPI wine_glGetFogFuncSGIS( GLfloat* points ) {
3247   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3248   TRACE("(%p)\n", points );
3249   funcs->ext.p_glGetFogFuncSGIS( points );
3250 }
3251
3252 static GLint WINAPI wine_glGetFragDataIndex( GLuint program, const char* name ) {
3253   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3254   TRACE("(%d, %p)\n", program, name );
3255   return funcs->ext.p_glGetFragDataIndex( program, name );
3256 }
3257
3258 static GLint WINAPI wine_glGetFragDataLocation( GLuint program, const char* name ) {
3259   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3260   TRACE("(%d, %p)\n", program, name );
3261   return funcs->ext.p_glGetFragDataLocation( program, name );
3262 }
3263
3264 static GLint WINAPI wine_glGetFragDataLocationEXT( GLuint program, const char* name ) {
3265   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3266   TRACE("(%d, %p)\n", program, name );
3267   return funcs->ext.p_glGetFragDataLocationEXT( program, name );
3268 }
3269
3270 static void WINAPI wine_glGetFragmentLightfvSGIX( GLenum light, GLenum pname, GLfloat* params ) {
3271   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3272   TRACE("(%d, %d, %p)\n", light, pname, params );
3273   funcs->ext.p_glGetFragmentLightfvSGIX( light, pname, params );
3274 }
3275
3276 static void WINAPI wine_glGetFragmentLightivSGIX( GLenum light, GLenum pname, GLint* params ) {
3277   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3278   TRACE("(%d, %d, %p)\n", light, pname, params );
3279   funcs->ext.p_glGetFragmentLightivSGIX( light, pname, params );
3280 }
3281
3282 static void WINAPI wine_glGetFragmentMaterialfvSGIX( GLenum face, GLenum pname, GLfloat* params ) {
3283   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3284   TRACE("(%d, %d, %p)\n", face, pname, params );
3285   funcs->ext.p_glGetFragmentMaterialfvSGIX( face, pname, params );
3286 }
3287
3288 static void WINAPI wine_glGetFragmentMaterialivSGIX( GLenum face, GLenum pname, GLint* params ) {
3289   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3290   TRACE("(%d, %d, %p)\n", face, pname, params );
3291   funcs->ext.p_glGetFragmentMaterialivSGIX( face, pname, params );
3292 }
3293
3294 static void WINAPI wine_glGetFramebufferAttachmentParameteriv( GLenum target, GLenum attachment, GLenum pname, GLint* params ) {
3295   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3296   TRACE("(%d, %d, %d, %p)\n", target, attachment, pname, params );
3297   funcs->ext.p_glGetFramebufferAttachmentParameteriv( target, attachment, pname, params );
3298 }
3299
3300 static void WINAPI wine_glGetFramebufferAttachmentParameterivEXT( GLenum target, GLenum attachment, GLenum pname, GLint* params ) {
3301   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3302   TRACE("(%d, %d, %d, %p)\n", target, attachment, pname, params );
3303   funcs->ext.p_glGetFramebufferAttachmentParameterivEXT( target, attachment, pname, params );
3304 }
3305
3306 static void WINAPI wine_glGetFramebufferParameteriv( GLenum target, GLenum pname, GLint* params ) {
3307   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3308   TRACE("(%d, %d, %p)\n", target, pname, params );
3309   funcs->ext.p_glGetFramebufferParameteriv( target, pname, params );
3310 }
3311
3312 static void WINAPI wine_glGetFramebufferParameterivEXT( GLuint framebuffer, GLenum pname, GLint* params ) {
3313   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3314   TRACE("(%d, %d, %p)\n", framebuffer, pname, params );
3315   funcs->ext.p_glGetFramebufferParameterivEXT( framebuffer, pname, params );
3316 }
3317
3318 static GLenum WINAPI wine_glGetGraphicsResetStatusARB( void ) {
3319   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3320   TRACE("()\n");
3321   return funcs->ext.p_glGetGraphicsResetStatusARB( );
3322 }
3323
3324 static unsigned int WINAPI wine_glGetHandleARB( GLenum pname ) {
3325   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3326   TRACE("(%d)\n", pname );
3327   return funcs->ext.p_glGetHandleARB( pname );
3328 }
3329
3330 static void WINAPI wine_glGetHistogram( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid* values ) {
3331   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3332   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
3333   funcs->ext.p_glGetHistogram( target, reset, format, type, values );
3334 }
3335
3336 static void WINAPI wine_glGetHistogramEXT( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid* values ) {
3337   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3338   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
3339   funcs->ext.p_glGetHistogramEXT( target, reset, format, type, values );
3340 }
3341
3342 static void WINAPI wine_glGetHistogramParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
3343   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3344   TRACE("(%d, %d, %p)\n", target, pname, params );
3345   funcs->ext.p_glGetHistogramParameterfv( target, pname, params );
3346 }
3347
3348 static void WINAPI wine_glGetHistogramParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
3349   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3350   TRACE("(%d, %d, %p)\n", target, pname, params );
3351   funcs->ext.p_glGetHistogramParameterfvEXT( target, pname, params );
3352 }
3353
3354 static void WINAPI wine_glGetHistogramParameteriv( GLenum target, GLenum pname, GLint* params ) {
3355   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3356   TRACE("(%d, %d, %p)\n", target, pname, params );
3357   funcs->ext.p_glGetHistogramParameteriv( target, pname, params );
3358 }
3359
3360 static void WINAPI wine_glGetHistogramParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
3361   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3362   TRACE("(%d, %d, %p)\n", target, pname, params );
3363   funcs->ext.p_glGetHistogramParameterivEXT( target, pname, params );
3364 }
3365
3366 static UINT64 WINAPI wine_glGetImageHandleNV( GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format ) {
3367   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3368   TRACE("(%d, %d, %d, %d, %d)\n", texture, level, layered, layer, format );
3369   return funcs->ext.p_glGetImageHandleNV( texture, level, layered, layer, format );
3370 }
3371
3372 static void WINAPI wine_glGetImageTransformParameterfvHP( GLenum target, GLenum pname, GLfloat* params ) {
3373   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3374   TRACE("(%d, %d, %p)\n", target, pname, params );
3375   funcs->ext.p_glGetImageTransformParameterfvHP( target, pname, params );
3376 }
3377
3378 static void WINAPI wine_glGetImageTransformParameterivHP( GLenum target, GLenum pname, GLint* params ) {
3379   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3380   TRACE("(%d, %d, %p)\n", target, pname, params );
3381   funcs->ext.p_glGetImageTransformParameterivHP( target, pname, params );
3382 }
3383
3384 static void WINAPI wine_glGetInfoLogARB( unsigned int obj, GLsizei maxLength, GLsizei* length, char* infoLog ) {
3385   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3386   TRACE("(%d, %d, %p, %p)\n", obj, maxLength, length, infoLog );
3387   funcs->ext.p_glGetInfoLogARB( obj, maxLength, length, infoLog );
3388 }
3389
3390 static GLint WINAPI wine_glGetInstrumentsSGIX( void ) {
3391   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3392   TRACE("()\n");
3393   return funcs->ext.p_glGetInstrumentsSGIX( );
3394 }
3395
3396 static void WINAPI wine_glGetInteger64i_v( GLenum target, GLuint index, INT64* data ) {
3397   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3398   TRACE("(%d, %d, %p)\n", target, index, data );
3399   funcs->ext.p_glGetInteger64i_v( target, index, data );
3400 }
3401
3402 static void WINAPI wine_glGetInteger64v( GLenum pname, INT64* params ) {
3403   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3404   TRACE("(%d, %p)\n", pname, params );
3405   funcs->ext.p_glGetInteger64v( pname, params );
3406 }
3407
3408 static void WINAPI wine_glGetIntegerIndexedvEXT( GLenum target, GLuint index, GLint* data ) {
3409   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3410   TRACE("(%d, %d, %p)\n", target, index, data );
3411   funcs->ext.p_glGetIntegerIndexedvEXT( target, index, data );
3412 }
3413
3414 static void WINAPI wine_glGetIntegeri_v( GLenum target, GLuint index, GLint* data ) {
3415   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3416   TRACE("(%d, %d, %p)\n", target, index, data );
3417   funcs->ext.p_glGetIntegeri_v( target, index, data );
3418 }
3419
3420 static void WINAPI wine_glGetIntegerui64i_vNV( GLenum value, GLuint index, UINT64* result ) {
3421   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3422   TRACE("(%d, %d, %p)\n", value, index, result );
3423   funcs->ext.p_glGetIntegerui64i_vNV( value, index, result );
3424 }
3425
3426 static void WINAPI wine_glGetIntegerui64vNV( GLenum value, UINT64* result ) {
3427   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3428   TRACE("(%d, %p)\n", value, result );
3429   funcs->ext.p_glGetIntegerui64vNV( value, result );
3430 }
3431
3432 static void WINAPI wine_glGetInternalformati64v( GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, INT64* params ) {
3433   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3434   TRACE("(%d, %d, %d, %d, %p)\n", target, internalformat, pname, bufSize, params );
3435   funcs->ext.p_glGetInternalformati64v( target, internalformat, pname, bufSize, params );
3436 }
3437
3438 static void WINAPI wine_glGetInternalformativ( GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params ) {
3439   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3440   TRACE("(%d, %d, %d, %d, %p)\n", target, internalformat, pname, bufSize, params );
3441   funcs->ext.p_glGetInternalformativ( target, internalformat, pname, bufSize, params );
3442 }
3443
3444 static void WINAPI wine_glGetInvariantBooleanvEXT( GLuint id, GLenum value, GLboolean* data ) {
3445   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3446   TRACE("(%d, %d, %p)\n", id, value, data );
3447   funcs->ext.p_glGetInvariantBooleanvEXT( id, value, data );
3448 }
3449
3450 static void WINAPI wine_glGetInvariantFloatvEXT( GLuint id, GLenum value, GLfloat* data ) {
3451   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3452   TRACE("(%d, %d, %p)\n", id, value, data );
3453   funcs->ext.p_glGetInvariantFloatvEXT( id, value, data );
3454 }
3455
3456 static void WINAPI wine_glGetInvariantIntegervEXT( GLuint id, GLenum value, GLint* data ) {
3457   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3458   TRACE("(%d, %d, %p)\n", id, value, data );
3459   funcs->ext.p_glGetInvariantIntegervEXT( id, value, data );
3460 }
3461
3462 static void WINAPI wine_glGetListParameterfvSGIX( GLuint list, GLenum pname, GLfloat* params ) {
3463   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3464   TRACE("(%d, %d, %p)\n", list, pname, params );
3465   funcs->ext.p_glGetListParameterfvSGIX( list, pname, params );
3466 }
3467
3468 static void WINAPI wine_glGetListParameterivSGIX( GLuint list, GLenum pname, GLint* params ) {
3469   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3470   TRACE("(%d, %d, %p)\n", list, pname, params );
3471   funcs->ext.p_glGetListParameterivSGIX( list, pname, params );
3472 }
3473
3474 static void WINAPI wine_glGetLocalConstantBooleanvEXT( GLuint id, GLenum value, GLboolean* data ) {
3475   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3476   TRACE("(%d, %d, %p)\n", id, value, data );
3477   funcs->ext.p_glGetLocalConstantBooleanvEXT( id, value, data );
3478 }
3479
3480 static void WINAPI wine_glGetLocalConstantFloatvEXT( GLuint id, GLenum value, GLfloat* data ) {
3481   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3482   TRACE("(%d, %d, %p)\n", id, value, data );
3483   funcs->ext.p_glGetLocalConstantFloatvEXT( id, value, data );
3484 }
3485
3486 static void WINAPI wine_glGetLocalConstantIntegervEXT( GLuint id, GLenum value, GLint* data ) {
3487   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3488   TRACE("(%d, %d, %p)\n", id, value, data );
3489   funcs->ext.p_glGetLocalConstantIntegervEXT( id, value, data );
3490 }
3491
3492 static void WINAPI wine_glGetMapAttribParameterfvNV( GLenum target, GLuint index, GLenum pname, GLfloat* params ) {
3493   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3494   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
3495   funcs->ext.p_glGetMapAttribParameterfvNV( target, index, pname, params );
3496 }
3497
3498 static void WINAPI wine_glGetMapAttribParameterivNV( GLenum target, GLuint index, GLenum pname, GLint* params ) {
3499   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3500   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
3501   funcs->ext.p_glGetMapAttribParameterivNV( target, index, pname, params );
3502 }
3503
3504 static void WINAPI wine_glGetMapControlPointsNV( GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid* points ) {
3505   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3506   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, index, type, ustride, vstride, packed, points );
3507   funcs->ext.p_glGetMapControlPointsNV( target, index, type, ustride, vstride, packed, points );
3508 }
3509
3510 static void WINAPI wine_glGetMapParameterfvNV( GLenum target, GLenum pname, GLfloat* params ) {
3511   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3512   TRACE("(%d, %d, %p)\n", target, pname, params );
3513   funcs->ext.p_glGetMapParameterfvNV( target, pname, params );
3514 }
3515
3516 static void WINAPI wine_glGetMapParameterivNV( GLenum target, GLenum pname, GLint* params ) {
3517   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3518   TRACE("(%d, %d, %p)\n", target, pname, params );
3519   funcs->ext.p_glGetMapParameterivNV( target, pname, params );
3520 }
3521
3522 static void WINAPI wine_glGetMinmax( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid* values ) {
3523   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3524   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
3525   funcs->ext.p_glGetMinmax( target, reset, format, type, values );
3526 }
3527
3528 static void WINAPI wine_glGetMinmaxEXT( GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid* values ) {
3529   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3530   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
3531   funcs->ext.p_glGetMinmaxEXT( target, reset, format, type, values );
3532 }
3533
3534 static void WINAPI wine_glGetMinmaxParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
3535   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3536   TRACE("(%d, %d, %p)\n", target, pname, params );
3537   funcs->ext.p_glGetMinmaxParameterfv( target, pname, params );
3538 }
3539
3540 static void WINAPI wine_glGetMinmaxParameterfvEXT( GLenum target, GLenum pname, GLfloat* params ) {
3541   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3542   TRACE("(%d, %d, %p)\n", target, pname, params );
3543   funcs->ext.p_glGetMinmaxParameterfvEXT( target, pname, params );
3544 }
3545
3546 static void WINAPI wine_glGetMinmaxParameteriv( GLenum target, GLenum pname, GLint* params ) {
3547   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3548   TRACE("(%d, %d, %p)\n", target, pname, params );
3549   funcs->ext.p_glGetMinmaxParameteriv( target, pname, params );
3550 }
3551
3552 static void WINAPI wine_glGetMinmaxParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
3553   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3554   TRACE("(%d, %d, %p)\n", target, pname, params );
3555   funcs->ext.p_glGetMinmaxParameterivEXT( target, pname, params );
3556 }
3557
3558 static void WINAPI wine_glGetMultiTexEnvfvEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat* params ) {
3559   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3560   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
3561   funcs->ext.p_glGetMultiTexEnvfvEXT( texunit, target, pname, params );
3562 }
3563
3564 static void WINAPI wine_glGetMultiTexEnvivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
3565   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3566   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
3567   funcs->ext.p_glGetMultiTexEnvivEXT( texunit, target, pname, params );
3568 }
3569
3570 static void WINAPI wine_glGetMultiTexGendvEXT( GLenum texunit, GLenum coord, GLenum pname, GLdouble* params ) {
3571   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3572   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
3573   funcs->ext.p_glGetMultiTexGendvEXT( texunit, coord, pname, params );
3574 }
3575
3576 static void WINAPI wine_glGetMultiTexGenfvEXT( GLenum texunit, GLenum coord, GLenum pname, GLfloat* params ) {
3577   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3578   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
3579   funcs->ext.p_glGetMultiTexGenfvEXT( texunit, coord, pname, params );
3580 }
3581
3582 static void WINAPI wine_glGetMultiTexGenivEXT( GLenum texunit, GLenum coord, GLenum pname, GLint* params ) {
3583   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3584   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
3585   funcs->ext.p_glGetMultiTexGenivEXT( texunit, coord, pname, params );
3586 }
3587
3588 static void WINAPI wine_glGetMultiTexImageEXT( GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, GLvoid* pixels ) {
3589   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3590   TRACE("(%d, %d, %d, %d, %d, %p)\n", texunit, target, level, format, type, pixels );
3591   funcs->ext.p_glGetMultiTexImageEXT( texunit, target, level, format, type, pixels );
3592 }
3593
3594 static void WINAPI wine_glGetMultiTexLevelParameterfvEXT( GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat* params ) {
3595   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3596   TRACE("(%d, %d, %d, %d, %p)\n", texunit, target, level, pname, params );
3597   funcs->ext.p_glGetMultiTexLevelParameterfvEXT( texunit, target, level, pname, params );
3598 }
3599
3600 static void WINAPI wine_glGetMultiTexLevelParameterivEXT( GLenum texunit, GLenum target, GLint level, GLenum pname, GLint* params ) {
3601   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3602   TRACE("(%d, %d, %d, %d, %p)\n", texunit, target, level, pname, params );
3603   funcs->ext.p_glGetMultiTexLevelParameterivEXT( texunit, target, level, pname, params );
3604 }
3605
3606 static void WINAPI wine_glGetMultiTexParameterIivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
3607   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3608   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
3609   funcs->ext.p_glGetMultiTexParameterIivEXT( texunit, target, pname, params );
3610 }
3611
3612 static void WINAPI wine_glGetMultiTexParameterIuivEXT( GLenum texunit, GLenum target, GLenum pname, GLuint* params ) {
3613   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3614   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
3615   funcs->ext.p_glGetMultiTexParameterIuivEXT( texunit, target, pname, params );
3616 }
3617
3618 static void WINAPI wine_glGetMultiTexParameterfvEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat* params ) {
3619   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3620   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
3621   funcs->ext.p_glGetMultiTexParameterfvEXT( texunit, target, pname, params );
3622 }
3623
3624 static void WINAPI wine_glGetMultiTexParameterivEXT( GLenum texunit, GLenum target, GLenum pname, GLint* params ) {
3625   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3626   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
3627   funcs->ext.p_glGetMultiTexParameterivEXT( texunit, target, pname, params );
3628 }
3629
3630 static void WINAPI wine_glGetMultisamplefv( GLenum pname, GLuint index, GLfloat* val ) {
3631   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3632   TRACE("(%d, %d, %p)\n", pname, index, val );
3633   funcs->ext.p_glGetMultisamplefv( pname, index, val );
3634 }
3635
3636 static void WINAPI wine_glGetMultisamplefvNV( GLenum pname, GLuint index, GLfloat* val ) {
3637   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3638   TRACE("(%d, %d, %p)\n", pname, index, val );
3639   funcs->ext.p_glGetMultisamplefvNV( pname, index, val );
3640 }
3641
3642 static void WINAPI wine_glGetNamedBufferParameterivEXT( GLuint buffer, GLenum pname, GLint* params ) {
3643   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3644   TRACE("(%d, %d, %p)\n", buffer, pname, params );
3645   funcs->ext.p_glGetNamedBufferParameterivEXT( buffer, pname, params );
3646 }
3647
3648 static void WINAPI wine_glGetNamedBufferParameterui64vNV( GLuint buffer, GLenum pname, UINT64* params ) {
3649   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3650   TRACE("(%d, %d, %p)\n", buffer, pname, params );
3651   funcs->ext.p_glGetNamedBufferParameterui64vNV( buffer, pname, params );
3652 }
3653
3654 static void WINAPI wine_glGetNamedBufferPointervEXT( GLuint buffer, GLenum pname, GLvoid** params ) {
3655   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3656   TRACE("(%d, %d, %p)\n", buffer, pname, params );
3657   funcs->ext.p_glGetNamedBufferPointervEXT( buffer, pname, params );
3658 }
3659
3660 static void WINAPI wine_glGetNamedBufferSubDataEXT( GLuint buffer, INT_PTR offset, INT_PTR size, GLvoid* data ) {
3661   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3662   TRACE("(%d, %ld, %ld, %p)\n", buffer, offset, size, data );
3663   funcs->ext.p_glGetNamedBufferSubDataEXT( buffer, offset, size, data );
3664 }
3665
3666 static void WINAPI wine_glGetNamedFramebufferAttachmentParameterivEXT( GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params ) {
3667   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3668   TRACE("(%d, %d, %d, %p)\n", framebuffer, attachment, pname, params );
3669   funcs->ext.p_glGetNamedFramebufferAttachmentParameterivEXT( framebuffer, attachment, pname, params );
3670 }
3671
3672 static void WINAPI wine_glGetNamedFramebufferParameterivEXT( GLuint framebuffer, GLenum pname, GLint* params ) {
3673   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3674   TRACE("(%d, %d, %p)\n", framebuffer, pname, params );
3675   funcs->ext.p_glGetNamedFramebufferParameterivEXT( framebuffer, pname, params );
3676 }
3677
3678 static void WINAPI wine_glGetNamedProgramLocalParameterIivEXT( GLuint program, GLenum target, GLuint index, GLint* params ) {
3679   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3680   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
3681   funcs->ext.p_glGetNamedProgramLocalParameterIivEXT( program, target, index, params );
3682 }
3683
3684 static void WINAPI wine_glGetNamedProgramLocalParameterIuivEXT( GLuint program, GLenum target, GLuint index, GLuint* params ) {
3685   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3686   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
3687   funcs->ext.p_glGetNamedProgramLocalParameterIuivEXT( program, target, index, params );
3688 }
3689
3690 static void WINAPI wine_glGetNamedProgramLocalParameterdvEXT( GLuint program, GLenum target, GLuint index, GLdouble* params ) {
3691   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3692   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
3693   funcs->ext.p_glGetNamedProgramLocalParameterdvEXT( program, target, index, params );
3694 }
3695
3696 static void WINAPI wine_glGetNamedProgramLocalParameterfvEXT( GLuint program, GLenum target, GLuint index, GLfloat* params ) {
3697   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3698   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
3699   funcs->ext.p_glGetNamedProgramLocalParameterfvEXT( program, target, index, params );
3700 }
3701
3702 static void WINAPI wine_glGetNamedProgramStringEXT( GLuint program, GLenum target, GLenum pname, GLvoid* string ) {
3703   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3704   TRACE("(%d, %d, %d, %p)\n", program, target, pname, string );
3705   funcs->ext.p_glGetNamedProgramStringEXT( program, target, pname, string );
3706 }
3707
3708 static void WINAPI wine_glGetNamedProgramivEXT( GLuint program, GLenum target, GLenum pname, GLint* params ) {
3709   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3710   TRACE("(%d, %d, %d, %p)\n", program, target, pname, params );
3711   funcs->ext.p_glGetNamedProgramivEXT( program, target, pname, params );
3712 }
3713
3714 static void WINAPI wine_glGetNamedRenderbufferParameterivEXT( GLuint renderbuffer, GLenum pname, GLint* params ) {
3715   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3716   TRACE("(%d, %d, %p)\n", renderbuffer, pname, params );
3717   funcs->ext.p_glGetNamedRenderbufferParameterivEXT( renderbuffer, pname, params );
3718 }
3719
3720 static void WINAPI wine_glGetNamedStringARB( GLint namelen, const char* name, GLsizei bufSize, GLint* stringlen, char* string ) {
3721   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3722   TRACE("(%d, %p, %d, %p, %p)\n", namelen, name, bufSize, stringlen, string );
3723   funcs->ext.p_glGetNamedStringARB( namelen, name, bufSize, stringlen, string );
3724 }
3725
3726 static void WINAPI wine_glGetNamedStringivARB( GLint namelen, const char* name, GLenum pname, GLint* params ) {
3727   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3728   TRACE("(%d, %p, %d, %p)\n", namelen, name, pname, params );
3729   funcs->ext.p_glGetNamedStringivARB( namelen, name, pname, params );
3730 }
3731
3732 static void WINAPI wine_glGetObjectBufferfvATI( GLuint buffer, GLenum pname, GLfloat* params ) {
3733   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3734   TRACE("(%d, %d, %p)\n", buffer, pname, params );
3735   funcs->ext.p_glGetObjectBufferfvATI( buffer, pname, params );
3736 }
3737
3738 static void WINAPI wine_glGetObjectBufferivATI( GLuint buffer, GLenum pname, GLint* params ) {
3739   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3740   TRACE("(%d, %d, %p)\n", buffer, pname, params );
3741   funcs->ext.p_glGetObjectBufferivATI( buffer, pname, params );
3742 }
3743
3744 static void WINAPI wine_glGetObjectLabel( GLenum identifier, GLuint name, GLsizei bufSize, GLsizei* length, char* label ) {
3745   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3746   TRACE("(%d, %d, %d, %p, %p)\n", identifier, name, bufSize, length, label );
3747   funcs->ext.p_glGetObjectLabel( identifier, name, bufSize, length, label );
3748 }
3749
3750 static void WINAPI wine_glGetObjectParameterfvARB( unsigned int obj, GLenum pname, GLfloat* params ) {
3751   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3752   TRACE("(%d, %d, %p)\n", obj, pname, params );
3753   funcs->ext.p_glGetObjectParameterfvARB( obj, pname, params );
3754 }
3755
3756 static void WINAPI wine_glGetObjectParameterivAPPLE( GLenum objectType, GLuint name, GLenum pname, GLint* params ) {
3757   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3758   TRACE("(%d, %d, %d, %p)\n", objectType, name, pname, params );
3759   funcs->ext.p_glGetObjectParameterivAPPLE( objectType, name, pname, params );
3760 }
3761
3762 static void WINAPI wine_glGetObjectParameterivARB( unsigned int obj, GLenum pname, GLint* params ) {
3763   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3764   TRACE("(%d, %d, %p)\n", obj, pname, params );
3765   funcs->ext.p_glGetObjectParameterivARB( obj, pname, params );
3766 }
3767
3768 static void WINAPI wine_glGetObjectPtrLabel( const void* ptr, GLsizei bufSize, GLsizei* length, char* label ) {
3769   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3770   TRACE("(%p, %d, %p, %p)\n", ptr, bufSize, length, label );
3771   funcs->ext.p_glGetObjectPtrLabel( ptr, bufSize, length, label );
3772 }
3773
3774 static void WINAPI wine_glGetOcclusionQueryivNV( GLuint id, GLenum pname, GLint* params ) {
3775   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3776   TRACE("(%d, %d, %p)\n", id, pname, params );
3777   funcs->ext.p_glGetOcclusionQueryivNV( id, pname, params );
3778 }
3779
3780 static void WINAPI wine_glGetOcclusionQueryuivNV( GLuint id, GLenum pname, GLuint* params ) {
3781   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3782   TRACE("(%d, %d, %p)\n", id, pname, params );
3783   funcs->ext.p_glGetOcclusionQueryuivNV( id, pname, params );
3784 }
3785
3786 static void WINAPI wine_glGetPathColorGenfvNV( GLenum color, GLenum pname, GLfloat* value ) {
3787   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3788   TRACE("(%d, %d, %p)\n", color, pname, value );
3789   funcs->ext.p_glGetPathColorGenfvNV( color, pname, value );
3790 }
3791
3792 static void WINAPI wine_glGetPathColorGenivNV( GLenum color, GLenum pname, GLint* value ) {
3793   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3794   TRACE("(%d, %d, %p)\n", color, pname, value );
3795   funcs->ext.p_glGetPathColorGenivNV( color, pname, value );
3796 }
3797
3798 static void WINAPI wine_glGetPathCommandsNV( GLuint path, GLubyte* commands ) {
3799   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3800   TRACE("(%d, %p)\n", path, commands );
3801   funcs->ext.p_glGetPathCommandsNV( path, commands );
3802 }
3803
3804 static void WINAPI wine_glGetPathCoordsNV( GLuint path, GLfloat* coords ) {
3805   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3806   TRACE("(%d, %p)\n", path, coords );
3807   funcs->ext.p_glGetPathCoordsNV( path, coords );
3808 }
3809
3810 static void WINAPI wine_glGetPathDashArrayNV( GLuint path, GLfloat* dashArray ) {
3811   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3812   TRACE("(%d, %p)\n", path, dashArray );
3813   funcs->ext.p_glGetPathDashArrayNV( path, dashArray );
3814 }
3815
3816 static GLfloat WINAPI wine_glGetPathLengthNV( GLuint path, GLsizei startSegment, GLsizei numSegments ) {
3817   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3818   TRACE("(%d, %d, %d)\n", path, startSegment, numSegments );
3819   return funcs->ext.p_glGetPathLengthNV( path, startSegment, numSegments );
3820 }
3821
3822 static void WINAPI wine_glGetPathMetricRangeNV( GLbitfield metricQueryMask, GLuint firstPathName, GLsizei numPaths, GLsizei stride, GLfloat* metrics ) {
3823   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3824   TRACE("(%d, %d, %d, %d, %p)\n", metricQueryMask, firstPathName, numPaths, stride, metrics );
3825   funcs->ext.p_glGetPathMetricRangeNV( metricQueryMask, firstPathName, numPaths, stride, metrics );
3826 }
3827
3828 static void WINAPI wine_glGetPathMetricsNV( GLbitfield metricQueryMask, GLsizei numPaths, GLenum pathNameType, const GLvoid* paths, GLuint pathBase, GLsizei stride, GLfloat* metrics ) {
3829   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3830   TRACE("(%d, %d, %d, %p, %d, %d, %p)\n", metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics );
3831   funcs->ext.p_glGetPathMetricsNV( metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics );
3832 }
3833
3834 static void WINAPI wine_glGetPathParameterfvNV( GLuint path, GLenum pname, GLfloat* value ) {
3835   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3836   TRACE("(%d, %d, %p)\n", path, pname, value );
3837   funcs->ext.p_glGetPathParameterfvNV( path, pname, value );
3838 }
3839
3840 static void WINAPI wine_glGetPathParameterivNV( GLuint path, GLenum pname, GLint* value ) {
3841   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3842   TRACE("(%d, %d, %p)\n", path, pname, value );
3843   funcs->ext.p_glGetPathParameterivNV( path, pname, value );
3844 }
3845
3846 static void WINAPI wine_glGetPathSpacingNV( GLenum pathListMode, GLsizei numPaths, GLenum pathNameType, const GLvoid* paths, GLuint pathBase, GLfloat advanceScale, GLfloat kerningScale, GLenum transformType, GLfloat* returnedSpacing ) {
3847   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3848   TRACE("(%d, %d, %d, %p, %d, %f, %f, %d, %p)\n", pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing );
3849   funcs->ext.p_glGetPathSpacingNV( pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing );
3850 }
3851
3852 static void WINAPI wine_glGetPathTexGenfvNV( GLenum texCoordSet, GLenum pname, GLfloat* value ) {
3853   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3854   TRACE("(%d, %d, %p)\n", texCoordSet, pname, value );
3855   funcs->ext.p_glGetPathTexGenfvNV( texCoordSet, pname, value );
3856 }
3857
3858 static void WINAPI wine_glGetPathTexGenivNV( GLenum texCoordSet, GLenum pname, GLint* value ) {
3859   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3860   TRACE("(%d, %d, %p)\n", texCoordSet, pname, value );
3861   funcs->ext.p_glGetPathTexGenivNV( texCoordSet, pname, value );
3862 }
3863
3864 static void WINAPI wine_glGetPerfMonitorCounterDataAMD( GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint* bytesWritten ) {
3865   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3866   TRACE("(%d, %d, %d, %p, %p)\n", monitor, pname, dataSize, data, bytesWritten );
3867   funcs->ext.p_glGetPerfMonitorCounterDataAMD( monitor, pname, dataSize, data, bytesWritten );
3868 }
3869
3870 static void WINAPI wine_glGetPerfMonitorCounterInfoAMD( GLuint group, GLuint counter, GLenum pname, GLvoid* data ) {
3871   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3872   TRACE("(%d, %d, %d, %p)\n", group, counter, pname, data );
3873   funcs->ext.p_glGetPerfMonitorCounterInfoAMD( group, counter, pname, data );
3874 }
3875
3876 static void WINAPI wine_glGetPerfMonitorCounterStringAMD( GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, char* counterString ) {
3877   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3878   TRACE("(%d, %d, %d, %p, %p)\n", group, counter, bufSize, length, counterString );
3879   funcs->ext.p_glGetPerfMonitorCounterStringAMD( group, counter, bufSize, length, counterString );
3880 }
3881
3882 static void WINAPI wine_glGetPerfMonitorCountersAMD( GLuint group, GLint* numCounters, GLint* maxActiveCounters, GLsizei counterSize, GLuint* counters ) {
3883   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3884   TRACE("(%d, %p, %p, %d, %p)\n", group, numCounters, maxActiveCounters, counterSize, counters );
3885   funcs->ext.p_glGetPerfMonitorCountersAMD( group, numCounters, maxActiveCounters, counterSize, counters );
3886 }
3887
3888 static void WINAPI wine_glGetPerfMonitorGroupStringAMD( GLuint group, GLsizei bufSize, GLsizei* length, char* groupString ) {
3889   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3890   TRACE("(%d, %d, %p, %p)\n", group, bufSize, length, groupString );
3891   funcs->ext.p_glGetPerfMonitorGroupStringAMD( group, bufSize, length, groupString );
3892 }
3893
3894 static void WINAPI wine_glGetPerfMonitorGroupsAMD( GLint* numGroups, GLsizei groupsSize, GLuint* groups ) {
3895   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3896   TRACE("(%p, %d, %p)\n", numGroups, groupsSize, groups );
3897   funcs->ext.p_glGetPerfMonitorGroupsAMD( numGroups, groupsSize, groups );
3898 }
3899
3900 static void WINAPI wine_glGetPixelTexGenParameterfvSGIS( GLenum pname, GLfloat* params ) {
3901   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3902   TRACE("(%d, %p)\n", pname, params );
3903   funcs->ext.p_glGetPixelTexGenParameterfvSGIS( pname, params );
3904 }
3905
3906 static void WINAPI wine_glGetPixelTexGenParameterivSGIS( GLenum pname, GLint* params ) {
3907   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3908   TRACE("(%d, %p)\n", pname, params );
3909   funcs->ext.p_glGetPixelTexGenParameterivSGIS( pname, params );
3910 }
3911
3912 static void WINAPI wine_glGetPointerIndexedvEXT( GLenum target, GLuint index, GLvoid** data ) {
3913   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3914   TRACE("(%d, %d, %p)\n", target, index, data );
3915   funcs->ext.p_glGetPointerIndexedvEXT( target, index, data );
3916 }
3917
3918 static void WINAPI wine_glGetPointervEXT( GLenum pname, GLvoid** params ) {
3919   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3920   TRACE("(%d, %p)\n", pname, params );
3921   funcs->ext.p_glGetPointervEXT( pname, params );
3922 }
3923
3924 static void WINAPI wine_glGetProgramBinary( GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary ) {
3925   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3926   TRACE("(%d, %d, %p, %p, %p)\n", program, bufSize, length, binaryFormat, binary );
3927   funcs->ext.p_glGetProgramBinary( program, bufSize, length, binaryFormat, binary );
3928 }
3929
3930 static void WINAPI wine_glGetProgramEnvParameterIivNV( GLenum target, GLuint index, GLint* params ) {
3931   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3932   TRACE("(%d, %d, %p)\n", target, index, params );
3933   funcs->ext.p_glGetProgramEnvParameterIivNV( target, index, params );
3934 }
3935
3936 static void WINAPI wine_glGetProgramEnvParameterIuivNV( GLenum target, GLuint index, GLuint* params ) {
3937   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3938   TRACE("(%d, %d, %p)\n", target, index, params );
3939   funcs->ext.p_glGetProgramEnvParameterIuivNV( target, index, params );
3940 }
3941
3942 static void WINAPI wine_glGetProgramEnvParameterdvARB( GLenum target, GLuint index, GLdouble* params ) {
3943   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3944   TRACE("(%d, %d, %p)\n", target, index, params );
3945   funcs->ext.p_glGetProgramEnvParameterdvARB( target, index, params );
3946 }
3947
3948 static void WINAPI wine_glGetProgramEnvParameterfvARB( GLenum target, GLuint index, GLfloat* params ) {
3949   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3950   TRACE("(%d, %d, %p)\n", target, index, params );
3951   funcs->ext.p_glGetProgramEnvParameterfvARB( target, index, params );
3952 }
3953
3954 static void WINAPI wine_glGetProgramInfoLog( GLuint program, GLsizei bufSize, GLsizei* length, char* infoLog ) {
3955   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3956   TRACE("(%d, %d, %p, %p)\n", program, bufSize, length, infoLog );
3957   funcs->ext.p_glGetProgramInfoLog( program, bufSize, length, infoLog );
3958 }
3959
3960 static void WINAPI wine_glGetProgramInterfaceiv( GLuint program, GLenum programInterface, GLenum pname, GLint* params ) {
3961   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3962   TRACE("(%d, %d, %d, %p)\n", program, programInterface, pname, params );
3963   funcs->ext.p_glGetProgramInterfaceiv( program, programInterface, pname, params );
3964 }
3965
3966 static void WINAPI wine_glGetProgramLocalParameterIivNV( GLenum target, GLuint index, GLint* params ) {
3967   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3968   TRACE("(%d, %d, %p)\n", target, index, params );
3969   funcs->ext.p_glGetProgramLocalParameterIivNV( target, index, params );
3970 }
3971
3972 static void WINAPI wine_glGetProgramLocalParameterIuivNV( GLenum target, GLuint index, GLuint* params ) {
3973   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3974   TRACE("(%d, %d, %p)\n", target, index, params );
3975   funcs->ext.p_glGetProgramLocalParameterIuivNV( target, index, params );
3976 }
3977
3978 static void WINAPI wine_glGetProgramLocalParameterdvARB( GLenum target, GLuint index, GLdouble* params ) {
3979   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3980   TRACE("(%d, %d, %p)\n", target, index, params );
3981   funcs->ext.p_glGetProgramLocalParameterdvARB( target, index, params );
3982 }
3983
3984 static void WINAPI wine_glGetProgramLocalParameterfvARB( GLenum target, GLuint index, GLfloat* params ) {
3985   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3986   TRACE("(%d, %d, %p)\n", target, index, params );
3987   funcs->ext.p_glGetProgramLocalParameterfvARB( target, index, params );
3988 }
3989
3990 static void WINAPI wine_glGetProgramNamedParameterdvNV( GLuint id, GLsizei len, const GLubyte* name, GLdouble* params ) {
3991   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3992   TRACE("(%d, %d, %p, %p)\n", id, len, name, params );
3993   funcs->ext.p_glGetProgramNamedParameterdvNV( id, len, name, params );
3994 }
3995
3996 static void WINAPI wine_glGetProgramNamedParameterfvNV( GLuint id, GLsizei len, const GLubyte* name, GLfloat* params ) {
3997   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
3998   TRACE("(%d, %d, %p, %p)\n", id, len, name, params );
3999   funcs->ext.p_glGetProgramNamedParameterfvNV( id, len, name, params );
4000 }
4001
4002 static void WINAPI wine_glGetProgramParameterdvNV( GLenum target, GLuint index, GLenum pname, GLdouble* params ) {
4003   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4004   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
4005   funcs->ext.p_glGetProgramParameterdvNV( target, index, pname, params );
4006 }
4007
4008 static void WINAPI wine_glGetProgramParameterfvNV( GLenum target, GLuint index, GLenum pname, GLfloat* params ) {
4009   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4010   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
4011   funcs->ext.p_glGetProgramParameterfvNV( target, index, pname, params );
4012 }
4013
4014 static void WINAPI wine_glGetProgramPipelineInfoLog( GLuint pipeline, GLsizei bufSize, GLsizei* length, char* infoLog ) {
4015   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4016   TRACE("(%d, %d, %p, %p)\n", pipeline, bufSize, length, infoLog );
4017   funcs->ext.p_glGetProgramPipelineInfoLog( pipeline, bufSize, length, infoLog );
4018 }
4019
4020 static void WINAPI wine_glGetProgramPipelineiv( GLuint pipeline, GLenum pname, GLint* params ) {
4021   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4022   TRACE("(%d, %d, %p)\n", pipeline, pname, params );
4023   funcs->ext.p_glGetProgramPipelineiv( pipeline, pname, params );
4024 }
4025
4026 static GLuint WINAPI wine_glGetProgramResourceIndex( GLuint program, GLenum programInterface, const char* name ) {
4027   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4028   TRACE("(%d, %d, %p)\n", program, programInterface, name );
4029   return funcs->ext.p_glGetProgramResourceIndex( program, programInterface, name );
4030 }
4031
4032 static GLint WINAPI wine_glGetProgramResourceLocation( GLuint program, GLenum programInterface, const char* name ) {
4033   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4034   TRACE("(%d, %d, %p)\n", program, programInterface, name );
4035   return funcs->ext.p_glGetProgramResourceLocation( program, programInterface, name );
4036 }
4037
4038 static GLint WINAPI wine_glGetProgramResourceLocationIndex( GLuint program, GLenum programInterface, const char* name ) {
4039   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4040   TRACE("(%d, %d, %p)\n", program, programInterface, name );
4041   return funcs->ext.p_glGetProgramResourceLocationIndex( program, programInterface, name );
4042 }
4043
4044 static void WINAPI wine_glGetProgramResourceName( GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei* length, char* name ) {
4045   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4046   TRACE("(%d, %d, %d, %d, %p, %p)\n", program, programInterface, index, bufSize, length, name );
4047   funcs->ext.p_glGetProgramResourceName( program, programInterface, index, bufSize, length, name );
4048 }
4049
4050 static void WINAPI wine_glGetProgramResourceiv( GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum* props, GLsizei bufSize, GLsizei* length, GLint* params ) {
4051   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4052   TRACE("(%d, %d, %d, %d, %p, %d, %p, %p)\n", program, programInterface, index, propCount, props, bufSize, length, params );
4053   funcs->ext.p_glGetProgramResourceiv( program, programInterface, index, propCount, props, bufSize, length, params );
4054 }
4055
4056 static void WINAPI wine_glGetProgramStageiv( GLuint program, GLenum shadertype, GLenum pname, GLint* values ) {
4057   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4058   TRACE("(%d, %d, %d, %p)\n", program, shadertype, pname, values );
4059   funcs->ext.p_glGetProgramStageiv( program, shadertype, pname, values );
4060 }
4061
4062 static void WINAPI wine_glGetProgramStringARB( GLenum target, GLenum pname, GLvoid* string ) {
4063   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4064   TRACE("(%d, %d, %p)\n", target, pname, string );
4065   funcs->ext.p_glGetProgramStringARB( target, pname, string );
4066 }
4067
4068 static void WINAPI wine_glGetProgramStringNV( GLuint id, GLenum pname, GLubyte* program ) {
4069   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4070   TRACE("(%d, %d, %p)\n", id, pname, program );
4071   funcs->ext.p_glGetProgramStringNV( id, pname, program );
4072 }
4073
4074 static void WINAPI wine_glGetProgramSubroutineParameteruivNV( GLenum target, GLuint index, GLuint* param ) {
4075   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4076   TRACE("(%d, %d, %p)\n", target, index, param );
4077   funcs->ext.p_glGetProgramSubroutineParameteruivNV( target, index, param );
4078 }
4079
4080 static void WINAPI wine_glGetProgramiv( GLuint program, GLenum pname, GLint* params ) {
4081   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4082   TRACE("(%d, %d, %p)\n", program, pname, params );
4083   funcs->ext.p_glGetProgramiv( program, pname, params );
4084 }
4085
4086 static void WINAPI wine_glGetProgramivARB( GLenum target, GLenum pname, GLint* params ) {
4087   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4088   TRACE("(%d, %d, %p)\n", target, pname, params );
4089   funcs->ext.p_glGetProgramivARB( target, pname, params );
4090 }
4091
4092 static void WINAPI wine_glGetProgramivNV( GLuint id, GLenum pname, GLint* params ) {
4093   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4094   TRACE("(%d, %d, %p)\n", id, pname, params );
4095   funcs->ext.p_glGetProgramivNV( id, pname, params );
4096 }
4097
4098 static void WINAPI wine_glGetQueryIndexediv( GLenum target, GLuint index, GLenum pname, GLint* params ) {
4099   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4100   TRACE("(%d, %d, %d, %p)\n", target, index, pname, params );
4101   funcs->ext.p_glGetQueryIndexediv( target, index, pname, params );
4102 }
4103
4104 static void WINAPI wine_glGetQueryObjecti64v( GLuint id, GLenum pname, INT64* params ) {
4105   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4106   TRACE("(%d, %d, %p)\n", id, pname, params );
4107   funcs->ext.p_glGetQueryObjecti64v( id, pname, params );
4108 }
4109
4110 static void WINAPI wine_glGetQueryObjecti64vEXT( GLuint id, GLenum pname, INT64* params ) {
4111   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4112   TRACE("(%d, %d, %p)\n", id, pname, params );
4113   funcs->ext.p_glGetQueryObjecti64vEXT( id, pname, params );
4114 }
4115
4116 static void WINAPI wine_glGetQueryObjectiv( GLuint id, GLenum pname, GLint* params ) {
4117   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4118   TRACE("(%d, %d, %p)\n", id, pname, params );
4119   funcs->ext.p_glGetQueryObjectiv( id, pname, params );
4120 }
4121
4122 static void WINAPI wine_glGetQueryObjectivARB( GLuint id, GLenum pname, GLint* params ) {
4123   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4124   TRACE("(%d, %d, %p)\n", id, pname, params );
4125   funcs->ext.p_glGetQueryObjectivARB( id, pname, params );
4126 }
4127
4128 static void WINAPI wine_glGetQueryObjectui64v( GLuint id, GLenum pname, UINT64* params ) {
4129   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4130   TRACE("(%d, %d, %p)\n", id, pname, params );
4131   funcs->ext.p_glGetQueryObjectui64v( id, pname, params );
4132 }
4133
4134 static void WINAPI wine_glGetQueryObjectui64vEXT( GLuint id, GLenum pname, UINT64* params ) {
4135   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4136   TRACE("(%d, %d, %p)\n", id, pname, params );
4137   funcs->ext.p_glGetQueryObjectui64vEXT( id, pname, params );
4138 }
4139
4140 static void WINAPI wine_glGetQueryObjectuiv( GLuint id, GLenum pname, GLuint* params ) {
4141   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4142   TRACE("(%d, %d, %p)\n", id, pname, params );
4143   funcs->ext.p_glGetQueryObjectuiv( id, pname, params );
4144 }
4145
4146 static void WINAPI wine_glGetQueryObjectuivARB( GLuint id, GLenum pname, GLuint* params ) {
4147   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4148   TRACE("(%d, %d, %p)\n", id, pname, params );
4149   funcs->ext.p_glGetQueryObjectuivARB( id, pname, params );
4150 }
4151
4152 static void WINAPI wine_glGetQueryiv( GLenum target, GLenum pname, GLint* params ) {
4153   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4154   TRACE("(%d, %d, %p)\n", target, pname, params );
4155   funcs->ext.p_glGetQueryiv( target, pname, params );
4156 }
4157
4158 static void WINAPI wine_glGetQueryivARB( GLenum target, GLenum pname, GLint* params ) {
4159   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4160   TRACE("(%d, %d, %p)\n", target, pname, params );
4161   funcs->ext.p_glGetQueryivARB( target, pname, params );
4162 }
4163
4164 static void WINAPI wine_glGetRenderbufferParameteriv( GLenum target, GLenum pname, GLint* params ) {
4165   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4166   TRACE("(%d, %d, %p)\n", target, pname, params );
4167   funcs->ext.p_glGetRenderbufferParameteriv( target, pname, params );
4168 }
4169
4170 static void WINAPI wine_glGetRenderbufferParameterivEXT( GLenum target, GLenum pname, GLint* params ) {
4171   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4172   TRACE("(%d, %d, %p)\n", target, pname, params );
4173   funcs->ext.p_glGetRenderbufferParameterivEXT( target, pname, params );
4174 }
4175
4176 static void WINAPI wine_glGetSamplerParameterIiv( GLuint sampler, GLenum pname, GLint* params ) {
4177   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4178   TRACE("(%d, %d, %p)\n", sampler, pname, params );
4179   funcs->ext.p_glGetSamplerParameterIiv( sampler, pname, params );
4180 }
4181
4182 static void WINAPI wine_glGetSamplerParameterIuiv( GLuint sampler, GLenum pname, GLuint* params ) {
4183   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4184   TRACE("(%d, %d, %p)\n", sampler, pname, params );
4185   funcs->ext.p_glGetSamplerParameterIuiv( sampler, pname, params );
4186 }
4187
4188 static void WINAPI wine_glGetSamplerParameterfv( GLuint sampler, GLenum pname, GLfloat* params ) {
4189   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4190   TRACE("(%d, %d, %p)\n", sampler, pname, params );
4191   funcs->ext.p_glGetSamplerParameterfv( sampler, pname, params );
4192 }
4193
4194 static void WINAPI wine_glGetSamplerParameteriv( GLuint sampler, GLenum pname, GLint* params ) {
4195   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4196   TRACE("(%d, %d, %p)\n", sampler, pname, params );
4197   funcs->ext.p_glGetSamplerParameteriv( sampler, pname, params );
4198 }
4199
4200 static void WINAPI wine_glGetSeparableFilter( GLenum target, GLenum format, GLenum type, GLvoid* row, GLvoid* column, GLvoid* span ) {
4201   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4202   TRACE("(%d, %d, %d, %p, %p, %p)\n", target, format, type, row, column, span );
4203   funcs->ext.p_glGetSeparableFilter( target, format, type, row, column, span );
4204 }
4205
4206 static void WINAPI wine_glGetSeparableFilterEXT( GLenum target, GLenum format, GLenum type, GLvoid* row, GLvoid* column, GLvoid* span ) {
4207   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4208   TRACE("(%d, %d, %d, %p, %p, %p)\n", target, format, type, row, column, span );
4209   funcs->ext.p_glGetSeparableFilterEXT( target, format, type, row, column, span );
4210 }
4211
4212 static void WINAPI wine_glGetShaderInfoLog( GLuint shader, GLsizei bufSize, GLsizei* length, char* infoLog ) {
4213   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4214   TRACE("(%d, %d, %p, %p)\n", shader, bufSize, length, infoLog );
4215   funcs->ext.p_glGetShaderInfoLog( shader, bufSize, length, infoLog );
4216 }
4217
4218 static void WINAPI wine_glGetShaderPrecisionFormat( GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision ) {
4219   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4220   TRACE("(%d, %d, %p, %p)\n", shadertype, precisiontype, range, precision );
4221   funcs->ext.p_glGetShaderPrecisionFormat( shadertype, precisiontype, range, precision );
4222 }
4223
4224 static void WINAPI wine_glGetShaderSource( GLuint shader, GLsizei bufSize, GLsizei* length, char* source ) {
4225   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4226   TRACE("(%d, %d, %p, %p)\n", shader, bufSize, length, source );
4227   funcs->ext.p_glGetShaderSource( shader, bufSize, length, source );
4228 }
4229
4230 static void WINAPI wine_glGetShaderSourceARB( unsigned int obj, GLsizei maxLength, GLsizei* length, char* source ) {
4231   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4232   TRACE("(%d, %d, %p, %p)\n", obj, maxLength, length, source );
4233   funcs->ext.p_glGetShaderSourceARB( obj, maxLength, length, source );
4234 }
4235
4236 static void WINAPI wine_glGetShaderiv( GLuint shader, GLenum pname, GLint* params ) {
4237   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4238   TRACE("(%d, %d, %p)\n", shader, pname, params );
4239   funcs->ext.p_glGetShaderiv( shader, pname, params );
4240 }
4241
4242 static void WINAPI wine_glGetSharpenTexFuncSGIS( GLenum target, GLfloat* points ) {
4243   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4244   TRACE("(%d, %p)\n", target, points );
4245   funcs->ext.p_glGetSharpenTexFuncSGIS( target, points );
4246 }
4247
4248 static const GLubyte * WINAPI wine_glGetStringi( GLenum name, GLuint index ) {
4249   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4250   TRACE("(%d, %d)\n", name, index );
4251   return funcs->ext.p_glGetStringi( name, index );
4252 }
4253
4254 static GLuint WINAPI wine_glGetSubroutineIndex( GLuint program, GLenum shadertype, const char* name ) {
4255   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4256   TRACE("(%d, %d, %p)\n", program, shadertype, name );
4257   return funcs->ext.p_glGetSubroutineIndex( program, shadertype, name );
4258 }
4259
4260 static GLint WINAPI wine_glGetSubroutineUniformLocation( GLuint program, GLenum shadertype, const char* name ) {
4261   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4262   TRACE("(%d, %d, %p)\n", program, shadertype, name );
4263   return funcs->ext.p_glGetSubroutineUniformLocation( program, shadertype, name );
4264 }
4265
4266 static void WINAPI wine_glGetSynciv( GLvoid* sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values ) {
4267   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4268   TRACE("(%p, %d, %d, %p, %p)\n", sync, pname, bufSize, length, values );
4269   funcs->ext.p_glGetSynciv( sync, pname, bufSize, length, values );
4270 }
4271
4272 static void WINAPI wine_glGetTexBumpParameterfvATI( GLenum pname, GLfloat* param ) {
4273   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4274   TRACE("(%d, %p)\n", pname, param );
4275   funcs->ext.p_glGetTexBumpParameterfvATI( pname, param );
4276 }
4277
4278 static void WINAPI wine_glGetTexBumpParameterivATI( GLenum pname, GLint* param ) {
4279   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4280   TRACE("(%d, %p)\n", pname, param );
4281   funcs->ext.p_glGetTexBumpParameterivATI( pname, param );
4282 }
4283
4284 static void WINAPI wine_glGetTexFilterFuncSGIS( GLenum target, GLenum filter, GLfloat* weights ) {
4285   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4286   TRACE("(%d, %d, %p)\n", target, filter, weights );
4287   funcs->ext.p_glGetTexFilterFuncSGIS( target, filter, weights );
4288 }
4289
4290 static void WINAPI wine_glGetTexParameterIiv( GLenum target, GLenum pname, GLint* params ) {
4291   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4292   TRACE("(%d, %d, %p)\n", target, pname, params );
4293   funcs->ext.p_glGetTexParameterIiv( target, pname, params );
4294 }
4295
4296 static void WINAPI wine_glGetTexParameterIivEXT( GLenum target, GLenum pname, GLint* params ) {
4297   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4298   TRACE("(%d, %d, %p)\n", target, pname, params );
4299   funcs->ext.p_glGetTexParameterIivEXT( target, pname, params );
4300 }
4301
4302 static void WINAPI wine_glGetTexParameterIuiv( GLenum target, GLenum pname, GLuint* params ) {
4303   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4304   TRACE("(%d, %d, %p)\n", target, pname, params );
4305   funcs->ext.p_glGetTexParameterIuiv( target, pname, params );
4306 }
4307
4308 static void WINAPI wine_glGetTexParameterIuivEXT( GLenum target, GLenum pname, GLuint* params ) {
4309   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4310   TRACE("(%d, %d, %p)\n", target, pname, params );
4311   funcs->ext.p_glGetTexParameterIuivEXT( target, pname, params );
4312 }
4313
4314 static void WINAPI wine_glGetTexParameterPointervAPPLE( GLenum target, GLenum pname, GLvoid** params ) {
4315   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4316   TRACE("(%d, %d, %p)\n", target, pname, params );
4317   funcs->ext.p_glGetTexParameterPointervAPPLE( target, pname, params );
4318 }
4319
4320 static UINT64 WINAPI wine_glGetTextureHandleNV( GLuint texture ) {
4321   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4322   TRACE("(%d)\n", texture );
4323   return funcs->ext.p_glGetTextureHandleNV( texture );
4324 }
4325
4326 static void WINAPI wine_glGetTextureImageEXT( GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, GLvoid* pixels ) {
4327   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4328   TRACE("(%d, %d, %d, %d, %d, %p)\n", texture, target, level, format, type, pixels );
4329   funcs->ext.p_glGetTextureImageEXT( texture, target, level, format, type, pixels );
4330 }
4331
4332 static void WINAPI wine_glGetTextureLevelParameterfvEXT( GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat* params ) {
4333   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4334   TRACE("(%d, %d, %d, %d, %p)\n", texture, target, level, pname, params );
4335   funcs->ext.p_glGetTextureLevelParameterfvEXT( texture, target, level, pname, params );
4336 }
4337
4338 static void WINAPI wine_glGetTextureLevelParameterivEXT( GLuint texture, GLenum target, GLint level, GLenum pname, GLint* params ) {
4339   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4340   TRACE("(%d, %d, %d, %d, %p)\n", texture, target, level, pname, params );
4341   funcs->ext.p_glGetTextureLevelParameterivEXT( texture, target, level, pname, params );
4342 }
4343
4344 static void WINAPI wine_glGetTextureParameterIivEXT( GLuint texture, GLenum target, GLenum pname, GLint* params ) {
4345   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4346   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
4347   funcs->ext.p_glGetTextureParameterIivEXT( texture, target, pname, params );
4348 }
4349
4350 static void WINAPI wine_glGetTextureParameterIuivEXT( GLuint texture, GLenum target, GLenum pname, GLuint* params ) {
4351   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4352   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
4353   funcs->ext.p_glGetTextureParameterIuivEXT( texture, target, pname, params );
4354 }
4355
4356 static void WINAPI wine_glGetTextureParameterfvEXT( GLuint texture, GLenum target, GLenum pname, GLfloat* params ) {
4357   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4358   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
4359   funcs->ext.p_glGetTextureParameterfvEXT( texture, target, pname, params );
4360 }
4361
4362 static void WINAPI wine_glGetTextureParameterivEXT( GLuint texture, GLenum target, GLenum pname, GLint* params ) {
4363   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4364   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
4365   funcs->ext.p_glGetTextureParameterivEXT( texture, target, pname, params );
4366 }
4367
4368 static UINT64 WINAPI wine_glGetTextureSamplerHandleNV( GLuint texture, GLuint sampler ) {
4369   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4370   TRACE("(%d, %d)\n", texture, sampler );
4371   return funcs->ext.p_glGetTextureSamplerHandleNV( texture, sampler );
4372 }
4373
4374 static void WINAPI wine_glGetTrackMatrixivNV( GLenum target, GLuint address, GLenum pname, GLint* params ) {
4375   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4376   TRACE("(%d, %d, %d, %p)\n", target, address, pname, params );
4377   funcs->ext.p_glGetTrackMatrixivNV( target, address, pname, params );
4378 }
4379
4380 static void WINAPI wine_glGetTransformFeedbackVarying( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, char* name ) {
4381   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4382   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
4383   funcs->ext.p_glGetTransformFeedbackVarying( program, index, bufSize, length, size, type, name );
4384 }
4385
4386 static void WINAPI wine_glGetTransformFeedbackVaryingEXT( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, char* name ) {
4387   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4388   TRACE("(%d, %d, %d, %p, %p, %p, %p)\n", program, index, bufSize, length, size, type, name );
4389   funcs->ext.p_glGetTransformFeedbackVaryingEXT( program, index, bufSize, length, size, type, name );
4390 }
4391
4392 static void WINAPI wine_glGetTransformFeedbackVaryingNV( GLuint program, GLuint index, GLint* location ) {
4393   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4394   TRACE("(%d, %d, %p)\n", program, index, location );
4395   funcs->ext.p_glGetTransformFeedbackVaryingNV( program, index, location );
4396 }
4397
4398 static GLuint WINAPI wine_glGetUniformBlockIndex( GLuint program, const char* uniformBlockName ) {
4399   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4400   TRACE("(%d, %p)\n", program, uniformBlockName );
4401   return funcs->ext.p_glGetUniformBlockIndex( program, uniformBlockName );
4402 }
4403
4404 static GLint WINAPI wine_glGetUniformBufferSizeEXT( GLuint program, GLint location ) {
4405   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4406   TRACE("(%d, %d)\n", program, location );
4407   return funcs->ext.p_glGetUniformBufferSizeEXT( program, location );
4408 }
4409
4410 static void WINAPI wine_glGetUniformIndices( GLuint program, GLsizei uniformCount, const char* const* uniformNames, GLuint* uniformIndices ) {
4411   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4412   TRACE("(%d, %d, %p, %p)\n", program, uniformCount, uniformNames, uniformIndices );
4413   funcs->ext.p_glGetUniformIndices( program, uniformCount, uniformNames, uniformIndices );
4414 }
4415
4416 static GLint WINAPI wine_glGetUniformLocation( GLuint program, const char* name ) {
4417   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4418   TRACE("(%d, %p)\n", program, name );
4419   return funcs->ext.p_glGetUniformLocation( program, name );
4420 }
4421
4422 static GLint WINAPI wine_glGetUniformLocationARB( unsigned int programObj, const char* name ) {
4423   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4424   TRACE("(%d, %p)\n", programObj, name );
4425   return funcs->ext.p_glGetUniformLocationARB( programObj, name );
4426 }
4427
4428 static INT_PTR WINAPI wine_glGetUniformOffsetEXT( GLuint program, GLint location ) {
4429   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4430   TRACE("(%d, %d)\n", program, location );
4431   return funcs->ext.p_glGetUniformOffsetEXT( program, location );
4432 }
4433
4434 static void WINAPI wine_glGetUniformSubroutineuiv( GLenum shadertype, GLint location, GLuint* params ) {
4435   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4436   TRACE("(%d, %d, %p)\n", shadertype, location, params );
4437   funcs->ext.p_glGetUniformSubroutineuiv( shadertype, location, params );
4438 }
4439
4440 static void WINAPI wine_glGetUniformdv( GLuint program, GLint location, GLdouble* params ) {
4441   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4442   TRACE("(%d, %d, %p)\n", program, location, params );
4443   funcs->ext.p_glGetUniformdv( program, location, params );
4444 }
4445
4446 static void WINAPI wine_glGetUniformfv( GLuint program, GLint location, GLfloat* params ) {
4447   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4448   TRACE("(%d, %d, %p)\n", program, location, params );
4449   funcs->ext.p_glGetUniformfv( program, location, params );
4450 }
4451
4452 static void WINAPI wine_glGetUniformfvARB( unsigned int programObj, GLint location, GLfloat* params ) {
4453   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4454   TRACE("(%d, %d, %p)\n", programObj, location, params );
4455   funcs->ext.p_glGetUniformfvARB( programObj, location, params );
4456 }
4457
4458 static void WINAPI wine_glGetUniformi64vNV( GLuint program, GLint location, INT64* params ) {
4459   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4460   TRACE("(%d, %d, %p)\n", program, location, params );
4461   funcs->ext.p_glGetUniformi64vNV( program, location, params );
4462 }
4463
4464 static void WINAPI wine_glGetUniformiv( GLuint program, GLint location, GLint* params ) {
4465   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4466   TRACE("(%d, %d, %p)\n", program, location, params );
4467   funcs->ext.p_glGetUniformiv( program, location, params );
4468 }
4469
4470 static void WINAPI wine_glGetUniformivARB( unsigned int programObj, GLint location, GLint* params ) {
4471   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4472   TRACE("(%d, %d, %p)\n", programObj, location, params );
4473   funcs->ext.p_glGetUniformivARB( programObj, location, params );
4474 }
4475
4476 static void WINAPI wine_glGetUniformui64vNV( GLuint program, GLint location, UINT64* params ) {
4477   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4478   TRACE("(%d, %d, %p)\n", program, location, params );
4479   funcs->ext.p_glGetUniformui64vNV( program, location, params );
4480 }
4481
4482 static void WINAPI wine_glGetUniformuiv( GLuint program, GLint location, GLuint* params ) {
4483   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4484   TRACE("(%d, %d, %p)\n", program, location, params );
4485   funcs->ext.p_glGetUniformuiv( program, location, params );
4486 }
4487
4488 static void WINAPI wine_glGetUniformuivEXT( GLuint program, GLint location, GLuint* params ) {
4489   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4490   TRACE("(%d, %d, %p)\n", program, location, params );
4491   funcs->ext.p_glGetUniformuivEXT( program, location, params );
4492 }
4493
4494 static void WINAPI wine_glGetVariantArrayObjectfvATI( GLuint id, GLenum pname, GLfloat* params ) {
4495   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4496   TRACE("(%d, %d, %p)\n", id, pname, params );
4497   funcs->ext.p_glGetVariantArrayObjectfvATI( id, pname, params );
4498 }
4499
4500 static void WINAPI wine_glGetVariantArrayObjectivATI( GLuint id, GLenum pname, GLint* params ) {
4501   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4502   TRACE("(%d, %d, %p)\n", id, pname, params );
4503   funcs->ext.p_glGetVariantArrayObjectivATI( id, pname, params );
4504 }
4505
4506 static void WINAPI wine_glGetVariantBooleanvEXT( GLuint id, GLenum value, GLboolean* data ) {
4507   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4508   TRACE("(%d, %d, %p)\n", id, value, data );
4509   funcs->ext.p_glGetVariantBooleanvEXT( id, value, data );
4510 }
4511
4512 static void WINAPI wine_glGetVariantFloatvEXT( GLuint id, GLenum value, GLfloat* data ) {
4513   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4514   TRACE("(%d, %d, %p)\n", id, value, data );
4515   funcs->ext.p_glGetVariantFloatvEXT( id, value, data );
4516 }
4517
4518 static void WINAPI wine_glGetVariantIntegervEXT( GLuint id, GLenum value, GLint* data ) {
4519   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4520   TRACE("(%d, %d, %p)\n", id, value, data );
4521   funcs->ext.p_glGetVariantIntegervEXT( id, value, data );
4522 }
4523
4524 static void WINAPI wine_glGetVariantPointervEXT( GLuint id, GLenum value, GLvoid** data ) {
4525   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4526   TRACE("(%d, %d, %p)\n", id, value, data );
4527   funcs->ext.p_glGetVariantPointervEXT( id, value, data );
4528 }
4529
4530 static GLint WINAPI wine_glGetVaryingLocationNV( GLuint program, const char* name ) {
4531   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4532   TRACE("(%d, %p)\n", program, name );
4533   return funcs->ext.p_glGetVaryingLocationNV( program, name );
4534 }
4535
4536 static void WINAPI wine_glGetVertexAttribArrayObjectfvATI( GLuint index, GLenum pname, GLfloat* params ) {
4537   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4538   TRACE("(%d, %d, %p)\n", index, pname, params );
4539   funcs->ext.p_glGetVertexAttribArrayObjectfvATI( index, pname, params );
4540 }
4541
4542 static void WINAPI wine_glGetVertexAttribArrayObjectivATI( GLuint index, GLenum pname, GLint* params ) {
4543   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4544   TRACE("(%d, %d, %p)\n", index, pname, params );
4545   funcs->ext.p_glGetVertexAttribArrayObjectivATI( index, pname, params );
4546 }
4547
4548 static void WINAPI wine_glGetVertexAttribIiv( GLuint index, GLenum pname, GLint* params ) {
4549   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4550   TRACE("(%d, %d, %p)\n", index, pname, params );
4551   funcs->ext.p_glGetVertexAttribIiv( index, pname, params );
4552 }
4553
4554 static void WINAPI wine_glGetVertexAttribIivEXT( GLuint index, GLenum pname, GLint* params ) {
4555   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4556   TRACE("(%d, %d, %p)\n", index, pname, params );
4557   funcs->ext.p_glGetVertexAttribIivEXT( index, pname, params );
4558 }
4559
4560 static void WINAPI wine_glGetVertexAttribIuiv( GLuint index, GLenum pname, GLuint* params ) {
4561   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4562   TRACE("(%d, %d, %p)\n", index, pname, params );
4563   funcs->ext.p_glGetVertexAttribIuiv( index, pname, params );
4564 }
4565
4566 static void WINAPI wine_glGetVertexAttribIuivEXT( GLuint index, GLenum pname, GLuint* params ) {
4567   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4568   TRACE("(%d, %d, %p)\n", index, pname, params );
4569   funcs->ext.p_glGetVertexAttribIuivEXT( index, pname, params );
4570 }
4571
4572 static void WINAPI wine_glGetVertexAttribLdv( GLuint index, GLenum pname, GLdouble* params ) {
4573   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4574   TRACE("(%d, %d, %p)\n", index, pname, params );
4575   funcs->ext.p_glGetVertexAttribLdv( index, pname, params );
4576 }
4577
4578 static void WINAPI wine_glGetVertexAttribLdvEXT( GLuint index, GLenum pname, GLdouble* params ) {
4579   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4580   TRACE("(%d, %d, %p)\n", index, pname, params );
4581   funcs->ext.p_glGetVertexAttribLdvEXT( index, pname, params );
4582 }
4583
4584 static void WINAPI wine_glGetVertexAttribLi64vNV( GLuint index, GLenum pname, INT64* params ) {
4585   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4586   TRACE("(%d, %d, %p)\n", index, pname, params );
4587   funcs->ext.p_glGetVertexAttribLi64vNV( index, pname, params );
4588 }
4589
4590 static void WINAPI wine_glGetVertexAttribLui64vNV( GLuint index, GLenum pname, UINT64* params ) {
4591   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4592   TRACE("(%d, %d, %p)\n", index, pname, params );
4593   funcs->ext.p_glGetVertexAttribLui64vNV( index, pname, params );
4594 }
4595
4596 static void WINAPI wine_glGetVertexAttribPointerv( GLuint index, GLenum pname, GLvoid** pointer ) {
4597   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4598   TRACE("(%d, %d, %p)\n", index, pname, pointer );
4599   funcs->ext.p_glGetVertexAttribPointerv( index, pname, pointer );
4600 }
4601
4602 static void WINAPI wine_glGetVertexAttribPointervARB( GLuint index, GLenum pname, GLvoid** pointer ) {
4603   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4604   TRACE("(%d, %d, %p)\n", index, pname, pointer );
4605   funcs->ext.p_glGetVertexAttribPointervARB( index, pname, pointer );
4606 }
4607
4608 static void WINAPI wine_glGetVertexAttribPointervNV( GLuint index, GLenum pname, GLvoid** pointer ) {
4609   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4610   TRACE("(%d, %d, %p)\n", index, pname, pointer );
4611   funcs->ext.p_glGetVertexAttribPointervNV( index, pname, pointer );
4612 }
4613
4614 static void WINAPI wine_glGetVertexAttribdv( GLuint index, GLenum pname, GLdouble* params ) {
4615   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4616   TRACE("(%d, %d, %p)\n", index, pname, params );
4617   funcs->ext.p_glGetVertexAttribdv( index, pname, params );
4618 }
4619
4620 static void WINAPI wine_glGetVertexAttribdvARB( GLuint index, GLenum pname, GLdouble* params ) {
4621   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4622   TRACE("(%d, %d, %p)\n", index, pname, params );
4623   funcs->ext.p_glGetVertexAttribdvARB( index, pname, params );
4624 }
4625
4626 static void WINAPI wine_glGetVertexAttribdvNV( GLuint index, GLenum pname, GLdouble* params ) {
4627   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4628   TRACE("(%d, %d, %p)\n", index, pname, params );
4629   funcs->ext.p_glGetVertexAttribdvNV( index, pname, params );
4630 }
4631
4632 static void WINAPI wine_glGetVertexAttribfv( GLuint index, GLenum pname, GLfloat* params ) {
4633   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4634   TRACE("(%d, %d, %p)\n", index, pname, params );
4635   funcs->ext.p_glGetVertexAttribfv( index, pname, params );
4636 }
4637
4638 static void WINAPI wine_glGetVertexAttribfvARB( GLuint index, GLenum pname, GLfloat* params ) {
4639   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4640   TRACE("(%d, %d, %p)\n", index, pname, params );
4641   funcs->ext.p_glGetVertexAttribfvARB( index, pname, params );
4642 }
4643
4644 static void WINAPI wine_glGetVertexAttribfvNV( GLuint index, GLenum pname, GLfloat* params ) {
4645   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4646   TRACE("(%d, %d, %p)\n", index, pname, params );
4647   funcs->ext.p_glGetVertexAttribfvNV( index, pname, params );
4648 }
4649
4650 static void WINAPI wine_glGetVertexAttribiv( GLuint index, GLenum pname, GLint* params ) {
4651   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4652   TRACE("(%d, %d, %p)\n", index, pname, params );
4653   funcs->ext.p_glGetVertexAttribiv( index, pname, params );
4654 }
4655
4656 static void WINAPI wine_glGetVertexAttribivARB( GLuint index, GLenum pname, GLint* params ) {
4657   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4658   TRACE("(%d, %d, %p)\n", index, pname, params );
4659   funcs->ext.p_glGetVertexAttribivARB( index, pname, params );
4660 }
4661
4662 static void WINAPI wine_glGetVertexAttribivNV( GLuint index, GLenum pname, GLint* params ) {
4663   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4664   TRACE("(%d, %d, %p)\n", index, pname, params );
4665   funcs->ext.p_glGetVertexAttribivNV( index, pname, params );
4666 }
4667
4668 static void WINAPI wine_glGetVideoCaptureStreamdvNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble* params ) {
4669   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4670   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
4671   funcs->ext.p_glGetVideoCaptureStreamdvNV( video_capture_slot, stream, pname, params );
4672 }
4673
4674 static void WINAPI wine_glGetVideoCaptureStreamfvNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat* params ) {
4675   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4676   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
4677   funcs->ext.p_glGetVideoCaptureStreamfvNV( video_capture_slot, stream, pname, params );
4678 }
4679
4680 static void WINAPI wine_glGetVideoCaptureStreamivNV( GLuint video_capture_slot, GLuint stream, GLenum pname, GLint* params ) {
4681   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4682   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
4683   funcs->ext.p_glGetVideoCaptureStreamivNV( video_capture_slot, stream, pname, params );
4684 }
4685
4686 static void WINAPI wine_glGetVideoCaptureivNV( GLuint video_capture_slot, GLenum pname, GLint* params ) {
4687   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4688   TRACE("(%d, %d, %p)\n", video_capture_slot, pname, params );
4689   funcs->ext.p_glGetVideoCaptureivNV( video_capture_slot, pname, params );
4690 }
4691
4692 static void WINAPI wine_glGetVideoi64vNV( GLuint video_slot, GLenum pname, INT64* params ) {
4693   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4694   TRACE("(%d, %d, %p)\n", video_slot, pname, params );
4695   funcs->ext.p_glGetVideoi64vNV( video_slot, pname, params );
4696 }
4697
4698 static void WINAPI wine_glGetVideoivNV( GLuint video_slot, GLenum pname, GLint* params ) {
4699   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4700   TRACE("(%d, %d, %p)\n", video_slot, pname, params );
4701   funcs->ext.p_glGetVideoivNV( video_slot, pname, params );
4702 }
4703
4704 static void WINAPI wine_glGetVideoui64vNV( GLuint video_slot, GLenum pname, UINT64* params ) {
4705   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4706   TRACE("(%d, %d, %p)\n", video_slot, pname, params );
4707   funcs->ext.p_glGetVideoui64vNV( video_slot, pname, params );
4708 }
4709
4710 static void WINAPI wine_glGetVideouivNV( GLuint video_slot, GLenum pname, GLuint* params ) {
4711   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4712   TRACE("(%d, %d, %p)\n", video_slot, pname, params );
4713   funcs->ext.p_glGetVideouivNV( video_slot, pname, params );
4714 }
4715
4716 static void WINAPI wine_glGetnColorTableARB( GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid* table ) {
4717   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4718   TRACE("(%d, %d, %d, %d, %p)\n", target, format, type, bufSize, table );
4719   funcs->ext.p_glGetnColorTableARB( target, format, type, bufSize, table );
4720 }
4721
4722 static void WINAPI wine_glGetnCompressedTexImageARB( GLenum target, GLint lod, GLsizei bufSize, GLvoid* img ) {
4723   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4724   TRACE("(%d, %d, %d, %p)\n", target, lod, bufSize, img );
4725   funcs->ext.p_glGetnCompressedTexImageARB( target, lod, bufSize, img );
4726 }
4727
4728 static void WINAPI wine_glGetnConvolutionFilterARB( GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid* image ) {
4729   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4730   TRACE("(%d, %d, %d, %d, %p)\n", target, format, type, bufSize, image );
4731   funcs->ext.p_glGetnConvolutionFilterARB( target, format, type, bufSize, image );
4732 }
4733
4734 static void WINAPI wine_glGetnHistogramARB( GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid* values ) {
4735   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4736   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, reset, format, type, bufSize, values );
4737   funcs->ext.p_glGetnHistogramARB( target, reset, format, type, bufSize, values );
4738 }
4739
4740 static void WINAPI wine_glGetnMapdvARB( GLenum target, GLenum query, GLsizei bufSize, GLdouble* v ) {
4741   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4742   TRACE("(%d, %d, %d, %p)\n", target, query, bufSize, v );
4743   funcs->ext.p_glGetnMapdvARB( target, query, bufSize, v );
4744 }
4745
4746 static void WINAPI wine_glGetnMapfvARB( GLenum target, GLenum query, GLsizei bufSize, GLfloat* v ) {
4747   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4748   TRACE("(%d, %d, %d, %p)\n", target, query, bufSize, v );
4749   funcs->ext.p_glGetnMapfvARB( target, query, bufSize, v );
4750 }
4751
4752 static void WINAPI wine_glGetnMapivARB( GLenum target, GLenum query, GLsizei bufSize, GLint* v ) {
4753   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4754   TRACE("(%d, %d, %d, %p)\n", target, query, bufSize, v );
4755   funcs->ext.p_glGetnMapivARB( target, query, bufSize, v );
4756 }
4757
4758 static void WINAPI wine_glGetnMinmaxARB( GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid* values ) {
4759   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4760   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, reset, format, type, bufSize, values );
4761   funcs->ext.p_glGetnMinmaxARB( target, reset, format, type, bufSize, values );
4762 }
4763
4764 static void WINAPI wine_glGetnPixelMapfvARB( GLenum map, GLsizei bufSize, GLfloat* values ) {
4765   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4766   TRACE("(%d, %d, %p)\n", map, bufSize, values );
4767   funcs->ext.p_glGetnPixelMapfvARB( map, bufSize, values );
4768 }
4769
4770 static void WINAPI wine_glGetnPixelMapuivARB( GLenum map, GLsizei bufSize, GLuint* values ) {
4771   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4772   TRACE("(%d, %d, %p)\n", map, bufSize, values );
4773   funcs->ext.p_glGetnPixelMapuivARB( map, bufSize, values );
4774 }
4775
4776 static void WINAPI wine_glGetnPixelMapusvARB( GLenum map, GLsizei bufSize, GLushort* values ) {
4777   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4778   TRACE("(%d, %d, %p)\n", map, bufSize, values );
4779   funcs->ext.p_glGetnPixelMapusvARB( map, bufSize, values );
4780 }
4781
4782 static void WINAPI wine_glGetnPolygonStippleARB( GLsizei bufSize, GLubyte* pattern ) {
4783   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4784   TRACE("(%d, %p)\n", bufSize, pattern );
4785   funcs->ext.p_glGetnPolygonStippleARB( bufSize, pattern );
4786 }
4787
4788 static void WINAPI wine_glGetnSeparableFilterARB( GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid* row, GLsizei columnBufSize, GLvoid* column, GLvoid* span ) {
4789   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4790   TRACE("(%d, %d, %d, %d, %p, %d, %p, %p)\n", target, format, type, rowBufSize, row, columnBufSize, column, span );
4791   funcs->ext.p_glGetnSeparableFilterARB( target, format, type, rowBufSize, row, columnBufSize, column, span );
4792 }
4793
4794 static void WINAPI wine_glGetnTexImageARB( GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid* img ) {
4795   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4796   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, level, format, type, bufSize, img );
4797   funcs->ext.p_glGetnTexImageARB( target, level, format, type, bufSize, img );
4798 }
4799
4800 static void WINAPI wine_glGetnUniformdvARB( GLuint program, GLint location, GLsizei bufSize, GLdouble* params ) {
4801   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4802   TRACE("(%d, %d, %d, %p)\n", program, location, bufSize, params );
4803   funcs->ext.p_glGetnUniformdvARB( program, location, bufSize, params );
4804 }
4805
4806 static void WINAPI wine_glGetnUniformfvARB( GLuint program, GLint location, GLsizei bufSize, GLfloat* params ) {
4807   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4808   TRACE("(%d, %d, %d, %p)\n", program, location, bufSize, params );
4809   funcs->ext.p_glGetnUniformfvARB( program, location, bufSize, params );
4810 }
4811
4812 static void WINAPI wine_glGetnUniformivARB( GLuint program, GLint location, GLsizei bufSize, GLint* params ) {
4813   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4814   TRACE("(%d, %d, %d, %p)\n", program, location, bufSize, params );
4815   funcs->ext.p_glGetnUniformivARB( program, location, bufSize, params );
4816 }
4817
4818 static void WINAPI wine_glGetnUniformuivARB( GLuint program, GLint location, GLsizei bufSize, GLuint* params ) {
4819   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4820   TRACE("(%d, %d, %d, %p)\n", program, location, bufSize, params );
4821   funcs->ext.p_glGetnUniformuivARB( program, location, bufSize, params );
4822 }
4823
4824 static void WINAPI wine_glGlobalAlphaFactorbSUN( GLbyte factor ) {
4825   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4826   TRACE("(%d)\n", factor );
4827   funcs->ext.p_glGlobalAlphaFactorbSUN( factor );
4828 }
4829
4830 static void WINAPI wine_glGlobalAlphaFactordSUN( GLdouble factor ) {
4831   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4832   TRACE("(%f)\n", factor );
4833   funcs->ext.p_glGlobalAlphaFactordSUN( factor );
4834 }
4835
4836 static void WINAPI wine_glGlobalAlphaFactorfSUN( GLfloat factor ) {
4837   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4838   TRACE("(%f)\n", factor );
4839   funcs->ext.p_glGlobalAlphaFactorfSUN( factor );
4840 }
4841
4842 static void WINAPI wine_glGlobalAlphaFactoriSUN( GLint factor ) {
4843   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4844   TRACE("(%d)\n", factor );
4845   funcs->ext.p_glGlobalAlphaFactoriSUN( factor );
4846 }
4847
4848 static void WINAPI wine_glGlobalAlphaFactorsSUN( GLshort factor ) {
4849   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4850   TRACE("(%d)\n", factor );
4851   funcs->ext.p_glGlobalAlphaFactorsSUN( factor );
4852 }
4853
4854 static void WINAPI wine_glGlobalAlphaFactorubSUN( GLubyte factor ) {
4855   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4856   TRACE("(%d)\n", factor );
4857   funcs->ext.p_glGlobalAlphaFactorubSUN( factor );
4858 }
4859
4860 static void WINAPI wine_glGlobalAlphaFactoruiSUN( GLuint factor ) {
4861   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4862   TRACE("(%d)\n", factor );
4863   funcs->ext.p_glGlobalAlphaFactoruiSUN( factor );
4864 }
4865
4866 static void WINAPI wine_glGlobalAlphaFactorusSUN( GLushort factor ) {
4867   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4868   TRACE("(%d)\n", factor );
4869   funcs->ext.p_glGlobalAlphaFactorusSUN( factor );
4870 }
4871
4872 static void WINAPI wine_glHintPGI( GLenum target, GLint mode ) {
4873   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4874   TRACE("(%d, %d)\n", target, mode );
4875   funcs->ext.p_glHintPGI( target, mode );
4876 }
4877
4878 static void WINAPI wine_glHistogram( GLenum target, GLsizei width, GLenum internalformat, GLboolean sink ) {
4879   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4880   TRACE("(%d, %d, %d, %d)\n", target, width, internalformat, sink );
4881   funcs->ext.p_glHistogram( target, width, internalformat, sink );
4882 }
4883
4884 static void WINAPI wine_glHistogramEXT( GLenum target, GLsizei width, GLenum internalformat, GLboolean sink ) {
4885   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4886   TRACE("(%d, %d, %d, %d)\n", target, width, internalformat, sink );
4887   funcs->ext.p_glHistogramEXT( target, width, internalformat, sink );
4888 }
4889
4890 static void WINAPI wine_glIglooInterfaceSGIX( GLenum pname, const GLvoid* params ) {
4891   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4892   TRACE("(%d, %p)\n", pname, params );
4893   funcs->ext.p_glIglooInterfaceSGIX( pname, params );
4894 }
4895
4896 static void WINAPI wine_glImageTransformParameterfHP( GLenum target, GLenum pname, GLfloat param ) {
4897   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4898   TRACE("(%d, %d, %f)\n", target, pname, param );
4899   funcs->ext.p_glImageTransformParameterfHP( target, pname, param );
4900 }
4901
4902 static void WINAPI wine_glImageTransformParameterfvHP( GLenum target, GLenum pname, const GLfloat* params ) {
4903   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4904   TRACE("(%d, %d, %p)\n", target, pname, params );
4905   funcs->ext.p_glImageTransformParameterfvHP( target, pname, params );
4906 }
4907
4908 static void WINAPI wine_glImageTransformParameteriHP( GLenum target, GLenum pname, GLint param ) {
4909   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4910   TRACE("(%d, %d, %d)\n", target, pname, param );
4911   funcs->ext.p_glImageTransformParameteriHP( target, pname, param );
4912 }
4913
4914 static void WINAPI wine_glImageTransformParameterivHP( GLenum target, GLenum pname, const GLint* params ) {
4915   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4916   TRACE("(%d, %d, %p)\n", target, pname, params );
4917   funcs->ext.p_glImageTransformParameterivHP( target, pname, params );
4918 }
4919
4920 static GLvoid* WINAPI wine_glImportSyncEXT( GLenum external_sync_type, INT_PTR external_sync, GLbitfield flags ) {
4921   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4922   TRACE("(%d, %ld, %d)\n", external_sync_type, external_sync, flags );
4923   return funcs->ext.p_glImportSyncEXT( external_sync_type, external_sync, flags );
4924 }
4925
4926 static void WINAPI wine_glIndexFormatNV( GLenum type, GLsizei stride ) {
4927   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4928   TRACE("(%d, %d)\n", type, stride );
4929   funcs->ext.p_glIndexFormatNV( type, stride );
4930 }
4931
4932 static void WINAPI wine_glIndexFuncEXT( GLenum func, GLclampf ref ) {
4933   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4934   TRACE("(%d, %f)\n", func, ref );
4935   funcs->ext.p_glIndexFuncEXT( func, ref );
4936 }
4937
4938 static void WINAPI wine_glIndexMaterialEXT( GLenum face, GLenum mode ) {
4939   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4940   TRACE("(%d, %d)\n", face, mode );
4941   funcs->ext.p_glIndexMaterialEXT( face, mode );
4942 }
4943
4944 static void WINAPI wine_glIndexPointerEXT( GLenum type, GLsizei stride, GLsizei count, const GLvoid* pointer ) {
4945   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4946   TRACE("(%d, %d, %d, %p)\n", type, stride, count, pointer );
4947   funcs->ext.p_glIndexPointerEXT( type, stride, count, pointer );
4948 }
4949
4950 static void WINAPI wine_glIndexPointerListIBM( GLenum type, GLint stride, const GLvoid** pointer, GLint ptrstride ) {
4951   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4952   TRACE("(%d, %d, %p, %d)\n", type, stride, pointer, ptrstride );
4953   funcs->ext.p_glIndexPointerListIBM( type, stride, pointer, ptrstride );
4954 }
4955
4956 static void WINAPI wine_glInsertComponentEXT( GLuint res, GLuint src, GLuint num ) {
4957   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4958   TRACE("(%d, %d, %d)\n", res, src, num );
4959   funcs->ext.p_glInsertComponentEXT( res, src, num );
4960 }
4961
4962 static void WINAPI wine_glInstrumentsBufferSGIX( GLsizei size, GLint* buffer ) {
4963   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4964   TRACE("(%d, %p)\n", size, buffer );
4965   funcs->ext.p_glInstrumentsBufferSGIX( size, buffer );
4966 }
4967
4968 static void WINAPI wine_glInterpolatePathsNV( GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight ) {
4969   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4970   TRACE("(%d, %d, %d, %f)\n", resultPath, pathA, pathB, weight );
4971   funcs->ext.p_glInterpolatePathsNV( resultPath, pathA, pathB, weight );
4972 }
4973
4974 static void WINAPI wine_glInvalidateBufferData( GLuint buffer ) {
4975   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4976   TRACE("(%d)\n", buffer );
4977   funcs->ext.p_glInvalidateBufferData( buffer );
4978 }
4979
4980 static void WINAPI wine_glInvalidateBufferSubData( GLuint buffer, INT_PTR offset, INT_PTR length ) {
4981   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4982   TRACE("(%d, %ld, %ld)\n", buffer, offset, length );
4983   funcs->ext.p_glInvalidateBufferSubData( buffer, offset, length );
4984 }
4985
4986 static void WINAPI wine_glInvalidateFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments ) {
4987   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4988   TRACE("(%d, %d, %p)\n", target, numAttachments, attachments );
4989   funcs->ext.p_glInvalidateFramebuffer( target, numAttachments, attachments );
4990 }
4991
4992 static void WINAPI wine_glInvalidateSubFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height ) {
4993   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
4994   TRACE("(%d, %d, %p, %d, %d, %d, %d)\n", target, numAttachments, attachments, x, y, width, height );
4995   funcs->ext.p_glInvalidateSubFramebuffer( target, numAttachments, attachments, x, y, width, height );
4996 }
4997
4998 static void WINAPI wine_glInvalidateTexImage( GLuint texture, GLint level ) {
4999   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5000   TRACE("(%d, %d)\n", texture, level );
5001   funcs->ext.p_glInvalidateTexImage( texture, level );
5002 }
5003
5004 static void WINAPI wine_glInvalidateTexSubImage( GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth ) {
5005   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5006   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texture, level, xoffset, yoffset, zoffset, width, height, depth );
5007   funcs->ext.p_glInvalidateTexSubImage( texture, level, xoffset, yoffset, zoffset, width, height, depth );
5008 }
5009
5010 static GLboolean WINAPI wine_glIsAsyncMarkerSGIX( GLuint marker ) {
5011   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5012   TRACE("(%d)\n", marker );
5013   return funcs->ext.p_glIsAsyncMarkerSGIX( marker );
5014 }
5015
5016 static GLboolean WINAPI wine_glIsBuffer( GLuint buffer ) {
5017   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5018   TRACE("(%d)\n", buffer );
5019   return funcs->ext.p_glIsBuffer( buffer );
5020 }
5021
5022 static GLboolean WINAPI wine_glIsBufferARB( GLuint buffer ) {
5023   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5024   TRACE("(%d)\n", buffer );
5025   return funcs->ext.p_glIsBufferARB( buffer );
5026 }
5027
5028 static GLboolean WINAPI wine_glIsBufferResidentNV( GLenum target ) {
5029   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5030   TRACE("(%d)\n", target );
5031   return funcs->ext.p_glIsBufferResidentNV( target );
5032 }
5033
5034 static GLboolean WINAPI wine_glIsEnabledIndexedEXT( GLenum target, GLuint index ) {
5035   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5036   TRACE("(%d, %d)\n", target, index );
5037   return funcs->ext.p_glIsEnabledIndexedEXT( target, index );
5038 }
5039
5040 static GLboolean WINAPI wine_glIsEnabledi( GLenum target, GLuint index ) {
5041   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5042   TRACE("(%d, %d)\n", target, index );
5043   return funcs->ext.p_glIsEnabledi( target, index );
5044 }
5045
5046 static GLboolean WINAPI wine_glIsFenceAPPLE( GLuint fence ) {
5047   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5048   TRACE("(%d)\n", fence );
5049   return funcs->ext.p_glIsFenceAPPLE( fence );
5050 }
5051
5052 static GLboolean WINAPI wine_glIsFenceNV( GLuint fence ) {
5053   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5054   TRACE("(%d)\n", fence );
5055   return funcs->ext.p_glIsFenceNV( fence );
5056 }
5057
5058 static GLboolean WINAPI wine_glIsFramebuffer( GLuint framebuffer ) {
5059   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5060   TRACE("(%d)\n", framebuffer );
5061   return funcs->ext.p_glIsFramebuffer( framebuffer );
5062 }
5063
5064 static GLboolean WINAPI wine_glIsFramebufferEXT( GLuint framebuffer ) {
5065   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5066   TRACE("(%d)\n", framebuffer );
5067   return funcs->ext.p_glIsFramebufferEXT( framebuffer );
5068 }
5069
5070 static GLboolean WINAPI wine_glIsImageHandleResidentNV( UINT64 handle ) {
5071   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5072   TRACE("(%s)\n", wine_dbgstr_longlong(handle) );
5073   return funcs->ext.p_glIsImageHandleResidentNV( handle );
5074 }
5075
5076 static GLboolean WINAPI wine_glIsNameAMD( GLenum identifier, GLuint name ) {
5077   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5078   TRACE("(%d, %d)\n", identifier, name );
5079   return funcs->ext.p_glIsNameAMD( identifier, name );
5080 }
5081
5082 static GLboolean WINAPI wine_glIsNamedBufferResidentNV( GLuint buffer ) {
5083   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5084   TRACE("(%d)\n", buffer );
5085   return funcs->ext.p_glIsNamedBufferResidentNV( buffer );
5086 }
5087
5088 static GLboolean WINAPI wine_glIsNamedStringARB( GLint namelen, const char* name ) {
5089   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5090   TRACE("(%d, %p)\n", namelen, name );
5091   return funcs->ext.p_glIsNamedStringARB( namelen, name );
5092 }
5093
5094 static GLboolean WINAPI wine_glIsObjectBufferATI( GLuint buffer ) {
5095   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5096   TRACE("(%d)\n", buffer );
5097   return funcs->ext.p_glIsObjectBufferATI( buffer );
5098 }
5099
5100 static GLboolean WINAPI wine_glIsOcclusionQueryNV( GLuint id ) {
5101   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5102   TRACE("(%d)\n", id );
5103   return funcs->ext.p_glIsOcclusionQueryNV( id );
5104 }
5105
5106 static GLboolean WINAPI wine_glIsPathNV( GLuint path ) {
5107   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5108   TRACE("(%d)\n", path );
5109   return funcs->ext.p_glIsPathNV( path );
5110 }
5111
5112 static GLboolean WINAPI wine_glIsPointInFillPathNV( GLuint path, GLuint mask, GLfloat x, GLfloat y ) {
5113   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5114   TRACE("(%d, %d, %f, %f)\n", path, mask, x, y );
5115   return funcs->ext.p_glIsPointInFillPathNV( path, mask, x, y );
5116 }
5117
5118 static GLboolean WINAPI wine_glIsPointInStrokePathNV( GLuint path, GLfloat x, GLfloat y ) {
5119   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5120   TRACE("(%d, %f, %f)\n", path, x, y );
5121   return funcs->ext.p_glIsPointInStrokePathNV( path, x, y );
5122 }
5123
5124 static GLboolean WINAPI wine_glIsProgram( GLuint program ) {
5125   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5126   TRACE("(%d)\n", program );
5127   return funcs->ext.p_glIsProgram( program );
5128 }
5129
5130 static GLboolean WINAPI wine_glIsProgramARB( GLuint program ) {
5131   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5132   TRACE("(%d)\n", program );
5133   return funcs->ext.p_glIsProgramARB( program );
5134 }
5135
5136 static GLboolean WINAPI wine_glIsProgramNV( GLuint id ) {
5137   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5138   TRACE("(%d)\n", id );
5139   return funcs->ext.p_glIsProgramNV( id );
5140 }
5141
5142 static GLboolean WINAPI wine_glIsProgramPipeline( GLuint pipeline ) {
5143   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5144   TRACE("(%d)\n", pipeline );
5145   return funcs->ext.p_glIsProgramPipeline( pipeline );
5146 }
5147
5148 static GLboolean WINAPI wine_glIsQuery( GLuint id ) {
5149   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5150   TRACE("(%d)\n", id );
5151   return funcs->ext.p_glIsQuery( id );
5152 }
5153
5154 static GLboolean WINAPI wine_glIsQueryARB( GLuint id ) {
5155   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5156   TRACE("(%d)\n", id );
5157   return funcs->ext.p_glIsQueryARB( id );
5158 }
5159
5160 static GLboolean WINAPI wine_glIsRenderbuffer( GLuint renderbuffer ) {
5161   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5162   TRACE("(%d)\n", renderbuffer );
5163   return funcs->ext.p_glIsRenderbuffer( renderbuffer );
5164 }
5165
5166 static GLboolean WINAPI wine_glIsRenderbufferEXT( GLuint renderbuffer ) {
5167   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5168   TRACE("(%d)\n", renderbuffer );
5169   return funcs->ext.p_glIsRenderbufferEXT( renderbuffer );
5170 }
5171
5172 static GLboolean WINAPI wine_glIsSampler( GLuint sampler ) {
5173   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5174   TRACE("(%d)\n", sampler );
5175   return funcs->ext.p_glIsSampler( sampler );
5176 }
5177
5178 static GLboolean WINAPI wine_glIsShader( GLuint shader ) {
5179   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5180   TRACE("(%d)\n", shader );
5181   return funcs->ext.p_glIsShader( shader );
5182 }
5183
5184 static GLboolean WINAPI wine_glIsSync( GLvoid* sync ) {
5185   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5186   TRACE("(%p)\n", sync );
5187   return funcs->ext.p_glIsSync( sync );
5188 }
5189
5190 static GLboolean WINAPI wine_glIsTextureEXT( GLuint texture ) {
5191   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5192   TRACE("(%d)\n", texture );
5193   return funcs->ext.p_glIsTextureEXT( texture );
5194 }
5195
5196 static GLboolean WINAPI wine_glIsTextureHandleResidentNV( UINT64 handle ) {
5197   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5198   TRACE("(%s)\n", wine_dbgstr_longlong(handle) );
5199   return funcs->ext.p_glIsTextureHandleResidentNV( handle );
5200 }
5201
5202 static GLboolean WINAPI wine_glIsTransformFeedback( GLuint id ) {
5203   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5204   TRACE("(%d)\n", id );
5205   return funcs->ext.p_glIsTransformFeedback( id );
5206 }
5207
5208 static GLboolean WINAPI wine_glIsTransformFeedbackNV( GLuint id ) {
5209   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5210   TRACE("(%d)\n", id );
5211   return funcs->ext.p_glIsTransformFeedbackNV( id );
5212 }
5213
5214 static GLboolean WINAPI wine_glIsVariantEnabledEXT( GLuint id, GLenum cap ) {
5215   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5216   TRACE("(%d, %d)\n", id, cap );
5217   return funcs->ext.p_glIsVariantEnabledEXT( id, cap );
5218 }
5219
5220 static GLboolean WINAPI wine_glIsVertexArray( GLuint array ) {
5221   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5222   TRACE("(%d)\n", array );
5223   return funcs->ext.p_glIsVertexArray( array );
5224 }
5225
5226 static GLboolean WINAPI wine_glIsVertexArrayAPPLE( GLuint array ) {
5227   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5228   TRACE("(%d)\n", array );
5229   return funcs->ext.p_glIsVertexArrayAPPLE( array );
5230 }
5231
5232 static GLboolean WINAPI wine_glIsVertexAttribEnabledAPPLE( GLuint index, GLenum pname ) {
5233   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5234   TRACE("(%d, %d)\n", index, pname );
5235   return funcs->ext.p_glIsVertexAttribEnabledAPPLE( index, pname );
5236 }
5237
5238 static void WINAPI wine_glLightEnviSGIX( GLenum pname, GLint param ) {
5239   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5240   TRACE("(%d, %d)\n", pname, param );
5241   funcs->ext.p_glLightEnviSGIX( pname, param );
5242 }
5243
5244 static void WINAPI wine_glLinkProgram( GLuint program ) {
5245   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5246   TRACE("(%d)\n", program );
5247   funcs->ext.p_glLinkProgram( program );
5248 }
5249
5250 static void WINAPI wine_glLinkProgramARB( unsigned int programObj ) {
5251   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5252   TRACE("(%d)\n", programObj );
5253   funcs->ext.p_glLinkProgramARB( programObj );
5254 }
5255
5256 static void WINAPI wine_glListParameterfSGIX( GLuint list, GLenum pname, GLfloat param ) {
5257   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5258   TRACE("(%d, %d, %f)\n", list, pname, param );
5259   funcs->ext.p_glListParameterfSGIX( list, pname, param );
5260 }
5261
5262 static void WINAPI wine_glListParameterfvSGIX( GLuint list, GLenum pname, const GLfloat* params ) {
5263   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5264   TRACE("(%d, %d, %p)\n", list, pname, params );
5265   funcs->ext.p_glListParameterfvSGIX( list, pname, params );
5266 }
5267
5268 static void WINAPI wine_glListParameteriSGIX( GLuint list, GLenum pname, GLint param ) {
5269   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5270   TRACE("(%d, %d, %d)\n", list, pname, param );
5271   funcs->ext.p_glListParameteriSGIX( list, pname, param );
5272 }
5273
5274 static void WINAPI wine_glListParameterivSGIX( GLuint list, GLenum pname, const GLint* params ) {
5275   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5276   TRACE("(%d, %d, %p)\n", list, pname, params );
5277   funcs->ext.p_glListParameterivSGIX( list, pname, params );
5278 }
5279
5280 static void WINAPI wine_glLoadIdentityDeformationMapSGIX( GLbitfield mask ) {
5281   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5282   TRACE("(%d)\n", mask );
5283   funcs->ext.p_glLoadIdentityDeformationMapSGIX( mask );
5284 }
5285
5286 static void WINAPI wine_glLoadProgramNV( GLenum target, GLuint id, GLsizei len, const GLubyte* program ) {
5287   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5288   TRACE("(%d, %d, %d, %p)\n", target, id, len, program );
5289   funcs->ext.p_glLoadProgramNV( target, id, len, program );
5290 }
5291
5292 static void WINAPI wine_glLoadTransposeMatrixd( const GLdouble* m ) {
5293   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5294   TRACE("(%p)\n", m );
5295   funcs->ext.p_glLoadTransposeMatrixd( m );
5296 }
5297
5298 static void WINAPI wine_glLoadTransposeMatrixdARB( const GLdouble* m ) {
5299   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5300   TRACE("(%p)\n", m );
5301   funcs->ext.p_glLoadTransposeMatrixdARB( m );
5302 }
5303
5304 static void WINAPI wine_glLoadTransposeMatrixf( const GLfloat* m ) {
5305   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5306   TRACE("(%p)\n", m );
5307   funcs->ext.p_glLoadTransposeMatrixf( m );
5308 }
5309
5310 static void WINAPI wine_glLoadTransposeMatrixfARB( const GLfloat* m ) {
5311   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5312   TRACE("(%p)\n", m );
5313   funcs->ext.p_glLoadTransposeMatrixfARB( m );
5314 }
5315
5316 static void WINAPI wine_glLockArraysEXT( GLint first, GLsizei count ) {
5317   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5318   TRACE("(%d, %d)\n", first, count );
5319   funcs->ext.p_glLockArraysEXT( first, count );
5320 }
5321
5322 static void WINAPI wine_glMTexCoord2fSGIS( GLenum target, GLfloat s, GLfloat t ) {
5323   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5324   TRACE("(%d, %f, %f)\n", target, s, t );
5325   funcs->ext.p_glMTexCoord2fSGIS( target, s, t );
5326 }
5327
5328 static void WINAPI wine_glMTexCoord2fvSGIS( GLenum target, GLfloat * v ) {
5329   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5330   TRACE("(%d, %p)\n", target, v );
5331   funcs->ext.p_glMTexCoord2fvSGIS( target, v );
5332 }
5333
5334 static void WINAPI wine_glMakeBufferNonResidentNV( GLenum target ) {
5335   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5336   TRACE("(%d)\n", target );
5337   funcs->ext.p_glMakeBufferNonResidentNV( target );
5338 }
5339
5340 static void WINAPI wine_glMakeBufferResidentNV( GLenum target, GLenum access ) {
5341   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5342   TRACE("(%d, %d)\n", target, access );
5343   funcs->ext.p_glMakeBufferResidentNV( target, access );
5344 }
5345
5346 static void WINAPI wine_glMakeImageHandleNonResidentNV( UINT64 handle ) {
5347   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5348   TRACE("(%s)\n", wine_dbgstr_longlong(handle) );
5349   funcs->ext.p_glMakeImageHandleNonResidentNV( handle );
5350 }
5351
5352 static void WINAPI wine_glMakeImageHandleResidentNV( UINT64 handle, GLenum access ) {
5353   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5354   TRACE("(%s, %d)\n", wine_dbgstr_longlong(handle), access );
5355   funcs->ext.p_glMakeImageHandleResidentNV( handle, access );
5356 }
5357
5358 static void WINAPI wine_glMakeNamedBufferNonResidentNV( GLuint buffer ) {
5359   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5360   TRACE("(%d)\n", buffer );
5361   funcs->ext.p_glMakeNamedBufferNonResidentNV( buffer );
5362 }
5363
5364 static void WINAPI wine_glMakeNamedBufferResidentNV( GLuint buffer, GLenum access ) {
5365   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5366   TRACE("(%d, %d)\n", buffer, access );
5367   funcs->ext.p_glMakeNamedBufferResidentNV( buffer, access );
5368 }
5369
5370 static void WINAPI wine_glMakeTextureHandleNonResidentNV( UINT64 handle ) {
5371   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5372   TRACE("(%s)\n", wine_dbgstr_longlong(handle) );
5373   funcs->ext.p_glMakeTextureHandleNonResidentNV( handle );
5374 }
5375
5376 static void WINAPI wine_glMakeTextureHandleResidentNV( UINT64 handle ) {
5377   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5378   TRACE("(%s)\n", wine_dbgstr_longlong(handle) );
5379   funcs->ext.p_glMakeTextureHandleResidentNV( handle );
5380 }
5381
5382 static GLvoid* WINAPI wine_glMapBuffer( GLenum target, GLenum access ) {
5383   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5384   TRACE("(%d, %d)\n", target, access );
5385   return funcs->ext.p_glMapBuffer( target, access );
5386 }
5387
5388 static GLvoid* WINAPI wine_glMapBufferARB( GLenum target, GLenum access ) {
5389   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5390   TRACE("(%d, %d)\n", target, access );
5391   return funcs->ext.p_glMapBufferARB( target, access );
5392 }
5393
5394 static GLvoid* WINAPI wine_glMapBufferRange( GLenum target, INT_PTR offset, INT_PTR length, GLbitfield access ) {
5395   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5396   TRACE("(%d, %ld, %ld, %d)\n", target, offset, length, access );
5397   return funcs->ext.p_glMapBufferRange( target, offset, length, access );
5398 }
5399
5400 static void WINAPI wine_glMapControlPointsNV( GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid* points ) {
5401   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5402   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, index, type, ustride, vstride, uorder, vorder, packed, points );
5403   funcs->ext.p_glMapControlPointsNV( target, index, type, ustride, vstride, uorder, vorder, packed, points );
5404 }
5405
5406 static GLvoid* WINAPI wine_glMapNamedBufferEXT( GLuint buffer, GLenum access ) {
5407   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5408   TRACE("(%d, %d)\n", buffer, access );
5409   return funcs->ext.p_glMapNamedBufferEXT( buffer, access );
5410 }
5411
5412 static GLvoid* WINAPI wine_glMapNamedBufferRangeEXT( GLuint buffer, INT_PTR offset, INT_PTR length, GLbitfield access ) {
5413   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5414   TRACE("(%d, %ld, %ld, %d)\n", buffer, offset, length, access );
5415   return funcs->ext.p_glMapNamedBufferRangeEXT( buffer, offset, length, access );
5416 }
5417
5418 static GLvoid* WINAPI wine_glMapObjectBufferATI( GLuint buffer ) {
5419   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5420   TRACE("(%d)\n", buffer );
5421   return funcs->ext.p_glMapObjectBufferATI( buffer );
5422 }
5423
5424 static void WINAPI wine_glMapParameterfvNV( GLenum target, GLenum pname, const GLfloat* params ) {
5425   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5426   TRACE("(%d, %d, %p)\n", target, pname, params );
5427   funcs->ext.p_glMapParameterfvNV( target, pname, params );
5428 }
5429
5430 static void WINAPI wine_glMapParameterivNV( GLenum target, GLenum pname, const GLint* params ) {
5431   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5432   TRACE("(%d, %d, %p)\n", target, pname, params );
5433   funcs->ext.p_glMapParameterivNV( target, pname, params );
5434 }
5435
5436 static void WINAPI wine_glMapVertexAttrib1dAPPLE( GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble* points ) {
5437   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5438   TRACE("(%d, %d, %f, %f, %d, %d, %p)\n", index, size, u1, u2, stride, order, points );
5439   funcs->ext.p_glMapVertexAttrib1dAPPLE( index, size, u1, u2, stride, order, points );
5440 }
5441
5442 static void WINAPI wine_glMapVertexAttrib1fAPPLE( GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points ) {
5443   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5444   TRACE("(%d, %d, %f, %f, %d, %d, %p)\n", index, size, u1, u2, stride, order, points );
5445   funcs->ext.p_glMapVertexAttrib1fAPPLE( index, size, u1, u2, stride, order, points );
5446 }
5447
5448 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, const GLdouble* points ) {
5449   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5450   TRACE("(%d, %d, %f, %f, %d, %d, %f, %f, %d, %d, %p)\n", index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
5451   funcs->ext.p_glMapVertexAttrib2dAPPLE( index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
5452 }
5453
5454 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, const GLfloat* points ) {
5455   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5456   TRACE("(%d, %d, %f, %f, %d, %d, %f, %f, %d, %d, %p)\n", index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
5457   funcs->ext.p_glMapVertexAttrib2fAPPLE( index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
5458 }
5459
5460 static void WINAPI wine_glMatrixFrustumEXT( GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ) {
5461   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5462   TRACE("(%d, %f, %f, %f, %f, %f, %f)\n", mode, left, right, bottom, top, zNear, zFar );
5463   funcs->ext.p_glMatrixFrustumEXT( mode, left, right, bottom, top, zNear, zFar );
5464 }
5465
5466 static void WINAPI wine_glMatrixIndexPointerARB( GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
5467   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5468   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
5469   funcs->ext.p_glMatrixIndexPointerARB( size, type, stride, pointer );
5470 }
5471
5472 static void WINAPI wine_glMatrixIndexubvARB( GLint size, const GLubyte* indices ) {
5473   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5474   TRACE("(%d, %p)\n", size, indices );
5475   funcs->ext.p_glMatrixIndexubvARB( size, indices );
5476 }
5477
5478 static void WINAPI wine_glMatrixIndexuivARB( GLint size, const GLuint* indices ) {
5479   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5480   TRACE("(%d, %p)\n", size, indices );
5481   funcs->ext.p_glMatrixIndexuivARB( size, indices );
5482 }
5483
5484 static void WINAPI wine_glMatrixIndexusvARB( GLint size, const GLushort* indices ) {
5485   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5486   TRACE("(%d, %p)\n", size, indices );
5487   funcs->ext.p_glMatrixIndexusvARB( size, indices );
5488 }
5489
5490 static void WINAPI wine_glMatrixLoadIdentityEXT( GLenum mode ) {
5491   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5492   TRACE("(%d)\n", mode );
5493   funcs->ext.p_glMatrixLoadIdentityEXT( mode );
5494 }
5495
5496 static void WINAPI wine_glMatrixLoadTransposedEXT( GLenum mode, const GLdouble* m ) {
5497   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5498   TRACE("(%d, %p)\n", mode, m );
5499   funcs->ext.p_glMatrixLoadTransposedEXT( mode, m );
5500 }
5501
5502 static void WINAPI wine_glMatrixLoadTransposefEXT( GLenum mode, const GLfloat* m ) {
5503   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5504   TRACE("(%d, %p)\n", mode, m );
5505   funcs->ext.p_glMatrixLoadTransposefEXT( mode, m );
5506 }
5507
5508 static void WINAPI wine_glMatrixLoaddEXT( GLenum mode, const GLdouble* m ) {
5509   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5510   TRACE("(%d, %p)\n", mode, m );
5511   funcs->ext.p_glMatrixLoaddEXT( mode, m );
5512 }
5513
5514 static void WINAPI wine_glMatrixLoadfEXT( GLenum mode, const GLfloat* m ) {
5515   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5516   TRACE("(%d, %p)\n", mode, m );
5517   funcs->ext.p_glMatrixLoadfEXT( mode, m );
5518 }
5519
5520 static void WINAPI wine_glMatrixMultTransposedEXT( GLenum mode, const GLdouble* m ) {
5521   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5522   TRACE("(%d, %p)\n", mode, m );
5523   funcs->ext.p_glMatrixMultTransposedEXT( mode, m );
5524 }
5525
5526 static void WINAPI wine_glMatrixMultTransposefEXT( GLenum mode, const GLfloat* m ) {
5527   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5528   TRACE("(%d, %p)\n", mode, m );
5529   funcs->ext.p_glMatrixMultTransposefEXT( mode, m );
5530 }
5531
5532 static void WINAPI wine_glMatrixMultdEXT( GLenum mode, const GLdouble* m ) {
5533   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5534   TRACE("(%d, %p)\n", mode, m );
5535   funcs->ext.p_glMatrixMultdEXT( mode, m );
5536 }
5537
5538 static void WINAPI wine_glMatrixMultfEXT( GLenum mode, const GLfloat* m ) {
5539   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5540   TRACE("(%d, %p)\n", mode, m );
5541   funcs->ext.p_glMatrixMultfEXT( mode, m );
5542 }
5543
5544 static void WINAPI wine_glMatrixOrthoEXT( GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ) {
5545   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5546   TRACE("(%d, %f, %f, %f, %f, %f, %f)\n", mode, left, right, bottom, top, zNear, zFar );
5547   funcs->ext.p_glMatrixOrthoEXT( mode, left, right, bottom, top, zNear, zFar );
5548 }
5549
5550 static void WINAPI wine_glMatrixPopEXT( GLenum mode ) {
5551   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5552   TRACE("(%d)\n", mode );
5553   funcs->ext.p_glMatrixPopEXT( mode );
5554 }
5555
5556 static void WINAPI wine_glMatrixPushEXT( GLenum mode ) {
5557   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5558   TRACE("(%d)\n", mode );
5559   funcs->ext.p_glMatrixPushEXT( mode );
5560 }
5561
5562 static void WINAPI wine_glMatrixRotatedEXT( GLenum mode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z ) {
5563   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5564   TRACE("(%d, %f, %f, %f, %f)\n", mode, angle, x, y, z );
5565   funcs->ext.p_glMatrixRotatedEXT( mode, angle, x, y, z );
5566 }
5567
5568 static void WINAPI wine_glMatrixRotatefEXT( GLenum mode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z ) {
5569   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5570   TRACE("(%d, %f, %f, %f, %f)\n", mode, angle, x, y, z );
5571   funcs->ext.p_glMatrixRotatefEXT( mode, angle, x, y, z );
5572 }
5573
5574 static void WINAPI wine_glMatrixScaledEXT( GLenum mode, GLdouble x, GLdouble y, GLdouble z ) {
5575   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5576   TRACE("(%d, %f, %f, %f)\n", mode, x, y, z );
5577   funcs->ext.p_glMatrixScaledEXT( mode, x, y, z );
5578 }
5579
5580 static void WINAPI wine_glMatrixScalefEXT( GLenum mode, GLfloat x, GLfloat y, GLfloat z ) {
5581   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5582   TRACE("(%d, %f, %f, %f)\n", mode, x, y, z );
5583   funcs->ext.p_glMatrixScalefEXT( mode, x, y, z );
5584 }
5585
5586 static void WINAPI wine_glMatrixTranslatedEXT( GLenum mode, GLdouble x, GLdouble y, GLdouble z ) {
5587   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5588   TRACE("(%d, %f, %f, %f)\n", mode, x, y, z );
5589   funcs->ext.p_glMatrixTranslatedEXT( mode, x, y, z );
5590 }
5591
5592 static void WINAPI wine_glMatrixTranslatefEXT( GLenum mode, GLfloat x, GLfloat y, GLfloat z ) {
5593   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5594   TRACE("(%d, %f, %f, %f)\n", mode, x, y, z );
5595   funcs->ext.p_glMatrixTranslatefEXT( mode, x, y, z );
5596 }
5597
5598 static void WINAPI wine_glMemoryBarrier( GLbitfield barriers ) {
5599   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5600   TRACE("(%d)\n", barriers );
5601   funcs->ext.p_glMemoryBarrier( barriers );
5602 }
5603
5604 static void WINAPI wine_glMemoryBarrierEXT( GLbitfield barriers ) {
5605   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5606   TRACE("(%d)\n", barriers );
5607   funcs->ext.p_glMemoryBarrierEXT( barriers );
5608 }
5609
5610 static void WINAPI wine_glMinSampleShading( GLfloat value ) {
5611   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5612   TRACE("(%f)\n", value );
5613   funcs->ext.p_glMinSampleShading( value );
5614 }
5615
5616 static void WINAPI wine_glMinSampleShadingARB( GLfloat value ) {
5617   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5618   TRACE("(%f)\n", value );
5619   funcs->ext.p_glMinSampleShadingARB( value );
5620 }
5621
5622 static void WINAPI wine_glMinmax( GLenum target, GLenum internalformat, GLboolean sink ) {
5623   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5624   TRACE("(%d, %d, %d)\n", target, internalformat, sink );
5625   funcs->ext.p_glMinmax( target, internalformat, sink );
5626 }
5627
5628 static void WINAPI wine_glMinmaxEXT( GLenum target, GLenum internalformat, GLboolean sink ) {
5629   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5630   TRACE("(%d, %d, %d)\n", target, internalformat, sink );
5631   funcs->ext.p_glMinmaxEXT( target, internalformat, sink );
5632 }
5633
5634 static void WINAPI wine_glMultTransposeMatrixd( const GLdouble* m ) {
5635   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5636   TRACE("(%p)\n", m );
5637   funcs->ext.p_glMultTransposeMatrixd( m );
5638 }
5639
5640 static void WINAPI wine_glMultTransposeMatrixdARB( const GLdouble* m ) {
5641   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5642   TRACE("(%p)\n", m );
5643   funcs->ext.p_glMultTransposeMatrixdARB( m );
5644 }
5645
5646 static void WINAPI wine_glMultTransposeMatrixf( const GLfloat* m ) {
5647   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5648   TRACE("(%p)\n", m );
5649   funcs->ext.p_glMultTransposeMatrixf( m );
5650 }
5651
5652 static void WINAPI wine_glMultTransposeMatrixfARB( const GLfloat* m ) {
5653   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5654   TRACE("(%p)\n", m );
5655   funcs->ext.p_glMultTransposeMatrixfARB( m );
5656 }
5657
5658 static void WINAPI wine_glMultiDrawArrays( GLenum mode, const GLint* first, const GLsizei* count, GLsizei drawcount ) {
5659   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5660   TRACE("(%d, %p, %p, %d)\n", mode, first, count, drawcount );
5661   funcs->ext.p_glMultiDrawArrays( mode, first, count, drawcount );
5662 }
5663
5664 static void WINAPI wine_glMultiDrawArraysEXT( GLenum mode, const GLint* first, const GLsizei* count, GLsizei primcount ) {
5665   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5666   TRACE("(%d, %p, %p, %d)\n", mode, first, count, primcount );
5667   funcs->ext.p_glMultiDrawArraysEXT( mode, first, count, primcount );
5668 }
5669
5670 static void WINAPI wine_glMultiDrawArraysIndirect( GLenum mode, const void* indirect, GLsizei drawcount, GLsizei stride ) {
5671   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5672   TRACE("(%d, %p, %d, %d)\n", mode, indirect, drawcount, stride );
5673   funcs->ext.p_glMultiDrawArraysIndirect( mode, indirect, drawcount, stride );
5674 }
5675
5676 static void WINAPI wine_glMultiDrawArraysIndirectAMD( GLenum mode, const GLvoid* indirect, GLsizei primcount, GLsizei stride ) {
5677   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5678   TRACE("(%d, %p, %d, %d)\n", mode, indirect, primcount, stride );
5679   funcs->ext.p_glMultiDrawArraysIndirectAMD( mode, indirect, primcount, stride );
5680 }
5681
5682 static void WINAPI wine_glMultiDrawElementArrayAPPLE( GLenum mode, const GLint* first, const GLsizei* count, GLsizei primcount ) {
5683   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5684   TRACE("(%d, %p, %p, %d)\n", mode, first, count, primcount );
5685   funcs->ext.p_glMultiDrawElementArrayAPPLE( mode, first, count, primcount );
5686 }
5687
5688 static void WINAPI wine_glMultiDrawElements( GLenum mode, const GLsizei* count, GLenum type, const GLvoid* const* indices, GLsizei drawcount ) {
5689   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5690   TRACE("(%d, %p, %d, %p, %d)\n", mode, count, type, indices, drawcount );
5691   funcs->ext.p_glMultiDrawElements( mode, count, type, indices, drawcount );
5692 }
5693
5694 static void WINAPI wine_glMultiDrawElementsBaseVertex( GLenum mode, const GLsizei* count, GLenum type, const GLvoid* const* indices, GLsizei drawcount, const GLint* basevertex ) {
5695   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5696   TRACE("(%d, %p, %d, %p, %d, %p)\n", mode, count, type, indices, drawcount, basevertex );
5697   funcs->ext.p_glMultiDrawElementsBaseVertex( mode, count, type, indices, drawcount, basevertex );
5698 }
5699
5700 static void WINAPI wine_glMultiDrawElementsEXT( GLenum mode, const GLsizei* count, GLenum type, const GLvoid** indices, GLsizei primcount ) {
5701   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5702   TRACE("(%d, %p, %d, %p, %d)\n", mode, count, type, indices, primcount );
5703   funcs->ext.p_glMultiDrawElementsEXT( mode, count, type, indices, primcount );
5704 }
5705
5706 static void WINAPI wine_glMultiDrawElementsIndirect( GLenum mode, GLenum type, const void* indirect, GLsizei drawcount, GLsizei stride ) {
5707   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5708   TRACE("(%d, %d, %p, %d, %d)\n", mode, type, indirect, drawcount, stride );
5709   funcs->ext.p_glMultiDrawElementsIndirect( mode, type, indirect, drawcount, stride );
5710 }
5711
5712 static void WINAPI wine_glMultiDrawElementsIndirectAMD( GLenum mode, GLenum type, const GLvoid* indirect, GLsizei primcount, GLsizei stride ) {
5713   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5714   TRACE("(%d, %d, %p, %d, %d)\n", mode, type, indirect, primcount, stride );
5715   funcs->ext.p_glMultiDrawElementsIndirectAMD( mode, type, indirect, primcount, stride );
5716 }
5717
5718 static void WINAPI wine_glMultiDrawRangeElementArrayAPPLE( GLenum mode, GLuint start, GLuint end, const GLint* first, const GLsizei* count, GLsizei primcount ) {
5719   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5720   TRACE("(%d, %d, %d, %p, %p, %d)\n", mode, start, end, first, count, primcount );
5721   funcs->ext.p_glMultiDrawRangeElementArrayAPPLE( mode, start, end, first, count, primcount );
5722 }
5723
5724 static void WINAPI wine_glMultiModeDrawArraysIBM( const GLenum* mode, const GLint* first, const GLsizei* count, GLsizei primcount, GLint modestride ) {
5725   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5726   TRACE("(%p, %p, %p, %d, %d)\n", mode, first, count, primcount, modestride );
5727   funcs->ext.p_glMultiModeDrawArraysIBM( mode, first, count, primcount, modestride );
5728 }
5729
5730 static void WINAPI wine_glMultiModeDrawElementsIBM( const GLenum* mode, const GLsizei* count, GLenum type, const GLvoid* const* indices, GLsizei primcount, GLint modestride ) {
5731   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5732   TRACE("(%p, %p, %d, %p, %d, %d)\n", mode, count, type, indices, primcount, modestride );
5733   funcs->ext.p_glMultiModeDrawElementsIBM( mode, count, type, indices, primcount, modestride );
5734 }
5735
5736 static void WINAPI wine_glMultiTexBufferEXT( GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer ) {
5737   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5738   TRACE("(%d, %d, %d, %d)\n", texunit, target, internalformat, buffer );
5739   funcs->ext.p_glMultiTexBufferEXT( texunit, target, internalformat, buffer );
5740 }
5741
5742 static void WINAPI wine_glMultiTexCoord1d( GLenum target, GLdouble s ) {
5743   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5744   TRACE("(%d, %f)\n", target, s );
5745   funcs->ext.p_glMultiTexCoord1d( target, s );
5746 }
5747
5748 static void WINAPI wine_glMultiTexCoord1dARB( GLenum target, GLdouble s ) {
5749   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5750   TRACE("(%d, %f)\n", target, s );
5751   funcs->ext.p_glMultiTexCoord1dARB( target, s );
5752 }
5753
5754 static void WINAPI wine_glMultiTexCoord1dSGIS( GLenum target, GLdouble s ) {
5755   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5756   TRACE("(%d, %f)\n", target, s );
5757   funcs->ext.p_glMultiTexCoord1dSGIS( target, s );
5758 }
5759
5760 static void WINAPI wine_glMultiTexCoord1dv( GLenum target, const GLdouble* v ) {
5761   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5762   TRACE("(%d, %p)\n", target, v );
5763   funcs->ext.p_glMultiTexCoord1dv( target, v );
5764 }
5765
5766 static void WINAPI wine_glMultiTexCoord1dvARB( GLenum target, const GLdouble* v ) {
5767   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5768   TRACE("(%d, %p)\n", target, v );
5769   funcs->ext.p_glMultiTexCoord1dvARB( target, v );
5770 }
5771
5772 static void WINAPI wine_glMultiTexCoord1dvSGIS( GLenum target, GLdouble * v ) {
5773   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5774   TRACE("(%d, %p)\n", target, v );
5775   funcs->ext.p_glMultiTexCoord1dvSGIS( target, v );
5776 }
5777
5778 static void WINAPI wine_glMultiTexCoord1f( GLenum target, GLfloat s ) {
5779   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5780   TRACE("(%d, %f)\n", target, s );
5781   funcs->ext.p_glMultiTexCoord1f( target, s );
5782 }
5783
5784 static void WINAPI wine_glMultiTexCoord1fARB( GLenum target, GLfloat s ) {
5785   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5786   TRACE("(%d, %f)\n", target, s );
5787   funcs->ext.p_glMultiTexCoord1fARB( target, s );
5788 }
5789
5790 static void WINAPI wine_glMultiTexCoord1fSGIS( GLenum target, GLfloat s ) {
5791   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5792   TRACE("(%d, %f)\n", target, s );
5793   funcs->ext.p_glMultiTexCoord1fSGIS( target, s );
5794 }
5795
5796 static void WINAPI wine_glMultiTexCoord1fv( GLenum target, const GLfloat* v ) {
5797   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5798   TRACE("(%d, %p)\n", target, v );
5799   funcs->ext.p_glMultiTexCoord1fv( target, v );
5800 }
5801
5802 static void WINAPI wine_glMultiTexCoord1fvARB( GLenum target, const GLfloat* v ) {
5803   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5804   TRACE("(%d, %p)\n", target, v );
5805   funcs->ext.p_glMultiTexCoord1fvARB( target, v );
5806 }
5807
5808 static void WINAPI wine_glMultiTexCoord1fvSGIS( GLenum target, const GLfloat * v ) {
5809   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5810   TRACE("(%d, %p)\n", target, v );
5811   funcs->ext.p_glMultiTexCoord1fvSGIS( target, v );
5812 }
5813
5814 static void WINAPI wine_glMultiTexCoord1hNV( GLenum target, unsigned short s ) {
5815   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5816   TRACE("(%d, %d)\n", target, s );
5817   funcs->ext.p_glMultiTexCoord1hNV( target, s );
5818 }
5819
5820 static void WINAPI wine_glMultiTexCoord1hvNV( GLenum target, const unsigned short* v ) {
5821   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5822   TRACE("(%d, %p)\n", target, v );
5823   funcs->ext.p_glMultiTexCoord1hvNV( target, v );
5824 }
5825
5826 static void WINAPI wine_glMultiTexCoord1i( GLenum target, GLint s ) {
5827   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5828   TRACE("(%d, %d)\n", target, s );
5829   funcs->ext.p_glMultiTexCoord1i( target, s );
5830 }
5831
5832 static void WINAPI wine_glMultiTexCoord1iARB( GLenum target, GLint s ) {
5833   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5834   TRACE("(%d, %d)\n", target, s );
5835   funcs->ext.p_glMultiTexCoord1iARB( target, s );
5836 }
5837
5838 static void WINAPI wine_glMultiTexCoord1iSGIS( GLenum target, GLint s ) {
5839   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5840   TRACE("(%d, %d)\n", target, s );
5841   funcs->ext.p_glMultiTexCoord1iSGIS( target, s );
5842 }
5843
5844 static void WINAPI wine_glMultiTexCoord1iv( GLenum target, const GLint* v ) {
5845   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5846   TRACE("(%d, %p)\n", target, v );
5847   funcs->ext.p_glMultiTexCoord1iv( target, v );
5848 }
5849
5850 static void WINAPI wine_glMultiTexCoord1ivARB( GLenum target, const GLint* v ) {
5851   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5852   TRACE("(%d, %p)\n", target, v );
5853   funcs->ext.p_glMultiTexCoord1ivARB( target, v );
5854 }
5855
5856 static void WINAPI wine_glMultiTexCoord1ivSGIS( GLenum target, GLint * v ) {
5857   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5858   TRACE("(%d, %p)\n", target, v );
5859   funcs->ext.p_glMultiTexCoord1ivSGIS( target, v );
5860 }
5861
5862 static void WINAPI wine_glMultiTexCoord1s( GLenum target, GLshort s ) {
5863   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5864   TRACE("(%d, %d)\n", target, s );
5865   funcs->ext.p_glMultiTexCoord1s( target, s );
5866 }
5867
5868 static void WINAPI wine_glMultiTexCoord1sARB( GLenum target, GLshort s ) {
5869   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5870   TRACE("(%d, %d)\n", target, s );
5871   funcs->ext.p_glMultiTexCoord1sARB( target, s );
5872 }
5873
5874 static void WINAPI wine_glMultiTexCoord1sSGIS( GLenum target, GLshort s ) {
5875   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5876   TRACE("(%d, %d)\n", target, s );
5877   funcs->ext.p_glMultiTexCoord1sSGIS( target, s );
5878 }
5879
5880 static void WINAPI wine_glMultiTexCoord1sv( GLenum target, const GLshort* v ) {
5881   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5882   TRACE("(%d, %p)\n", target, v );
5883   funcs->ext.p_glMultiTexCoord1sv( target, v );
5884 }
5885
5886 static void WINAPI wine_glMultiTexCoord1svARB( GLenum target, const GLshort* v ) {
5887   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5888   TRACE("(%d, %p)\n", target, v );
5889   funcs->ext.p_glMultiTexCoord1svARB( target, v );
5890 }
5891
5892 static void WINAPI wine_glMultiTexCoord1svSGIS( GLenum target, GLshort * v ) {
5893   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5894   TRACE("(%d, %p)\n", target, v );
5895   funcs->ext.p_glMultiTexCoord1svSGIS( target, v );
5896 }
5897
5898 static void WINAPI wine_glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t ) {
5899   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5900   TRACE("(%d, %f, %f)\n", target, s, t );
5901   funcs->ext.p_glMultiTexCoord2d( target, s, t );
5902 }
5903
5904 static void WINAPI wine_glMultiTexCoord2dARB( GLenum target, GLdouble s, GLdouble t ) {
5905   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5906   TRACE("(%d, %f, %f)\n", target, s, t );
5907   funcs->ext.p_glMultiTexCoord2dARB( target, s, t );
5908 }
5909
5910 static void WINAPI wine_glMultiTexCoord2dSGIS( GLenum target, GLdouble s, GLdouble t ) {
5911   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5912   TRACE("(%d, %f, %f)\n", target, s, t );
5913   funcs->ext.p_glMultiTexCoord2dSGIS( target, s, t );
5914 }
5915
5916 static void WINAPI wine_glMultiTexCoord2dv( GLenum target, const GLdouble* v ) {
5917   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5918   TRACE("(%d, %p)\n", target, v );
5919   funcs->ext.p_glMultiTexCoord2dv( target, v );
5920 }
5921
5922 static void WINAPI wine_glMultiTexCoord2dvARB( GLenum target, const GLdouble* v ) {
5923   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5924   TRACE("(%d, %p)\n", target, v );
5925   funcs->ext.p_glMultiTexCoord2dvARB( target, v );
5926 }
5927
5928 static void WINAPI wine_glMultiTexCoord2dvSGIS( GLenum target, GLdouble * v ) {
5929   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5930   TRACE("(%d, %p)\n", target, v );
5931   funcs->ext.p_glMultiTexCoord2dvSGIS( target, v );
5932 }
5933
5934 static void WINAPI wine_glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t ) {
5935   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5936   TRACE("(%d, %f, %f)\n", target, s, t );
5937   funcs->ext.p_glMultiTexCoord2f( target, s, t );
5938 }
5939
5940 static void WINAPI wine_glMultiTexCoord2fARB( GLenum target, GLfloat s, GLfloat t ) {
5941   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5942   TRACE("(%d, %f, %f)\n", target, s, t );
5943   funcs->ext.p_glMultiTexCoord2fARB( target, s, t );
5944 }
5945
5946 static void WINAPI wine_glMultiTexCoord2fSGIS( GLenum target, GLfloat s, GLfloat t ) {
5947   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5948   TRACE("(%d, %f, %f)\n", target, s, t );
5949   funcs->ext.p_glMultiTexCoord2fSGIS( target, s, t );
5950 }
5951
5952 static void WINAPI wine_glMultiTexCoord2fv( GLenum target, const GLfloat* v ) {
5953   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5954   TRACE("(%d, %p)\n", target, v );
5955   funcs->ext.p_glMultiTexCoord2fv( target, v );
5956 }
5957
5958 static void WINAPI wine_glMultiTexCoord2fvARB( GLenum target, const GLfloat* v ) {
5959   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5960   TRACE("(%d, %p)\n", target, v );
5961   funcs->ext.p_glMultiTexCoord2fvARB( target, v );
5962 }
5963
5964 static void WINAPI wine_glMultiTexCoord2fvSGIS( GLenum target, GLfloat * v ) {
5965   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5966   TRACE("(%d, %p)\n", target, v );
5967   funcs->ext.p_glMultiTexCoord2fvSGIS( target, v );
5968 }
5969
5970 static void WINAPI wine_glMultiTexCoord2hNV( GLenum target, unsigned short s, unsigned short t ) {
5971   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5972   TRACE("(%d, %d, %d)\n", target, s, t );
5973   funcs->ext.p_glMultiTexCoord2hNV( target, s, t );
5974 }
5975
5976 static void WINAPI wine_glMultiTexCoord2hvNV( GLenum target, const unsigned short* v ) {
5977   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5978   TRACE("(%d, %p)\n", target, v );
5979   funcs->ext.p_glMultiTexCoord2hvNV( target, v );
5980 }
5981
5982 static void WINAPI wine_glMultiTexCoord2i( GLenum target, GLint s, GLint t ) {
5983   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5984   TRACE("(%d, %d, %d)\n", target, s, t );
5985   funcs->ext.p_glMultiTexCoord2i( target, s, t );
5986 }
5987
5988 static void WINAPI wine_glMultiTexCoord2iARB( GLenum target, GLint s, GLint t ) {
5989   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5990   TRACE("(%d, %d, %d)\n", target, s, t );
5991   funcs->ext.p_glMultiTexCoord2iARB( target, s, t );
5992 }
5993
5994 static void WINAPI wine_glMultiTexCoord2iSGIS( GLenum target, GLint s, GLint t ) {
5995   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
5996   TRACE("(%d, %d, %d)\n", target, s, t );
5997   funcs->ext.p_glMultiTexCoord2iSGIS( target, s, t );
5998 }
5999
6000 static void WINAPI wine_glMultiTexCoord2iv( GLenum target, const GLint* v ) {
6001   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6002   TRACE("(%d, %p)\n", target, v );
6003   funcs->ext.p_glMultiTexCoord2iv( target, v );
6004 }
6005
6006 static void WINAPI wine_glMultiTexCoord2ivARB( GLenum target, const GLint* v ) {
6007   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6008   TRACE("(%d, %p)\n", target, v );
6009   funcs->ext.p_glMultiTexCoord2ivARB( target, v );
6010 }
6011
6012 static void WINAPI wine_glMultiTexCoord2ivSGIS( GLenum target, GLint * v ) {
6013   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6014   TRACE("(%d, %p)\n", target, v );
6015   funcs->ext.p_glMultiTexCoord2ivSGIS( target, v );
6016 }
6017
6018 static void WINAPI wine_glMultiTexCoord2s( GLenum target, GLshort s, GLshort t ) {
6019   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6020   TRACE("(%d, %d, %d)\n", target, s, t );
6021   funcs->ext.p_glMultiTexCoord2s( target, s, t );
6022 }
6023
6024 static void WINAPI wine_glMultiTexCoord2sARB( GLenum target, GLshort s, GLshort t ) {
6025   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6026   TRACE("(%d, %d, %d)\n", target, s, t );
6027   funcs->ext.p_glMultiTexCoord2sARB( target, s, t );
6028 }
6029
6030 static void WINAPI wine_glMultiTexCoord2sSGIS( GLenum target, GLshort s, GLshort t ) {
6031   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6032   TRACE("(%d, %d, %d)\n", target, s, t );
6033   funcs->ext.p_glMultiTexCoord2sSGIS( target, s, t );
6034 }
6035
6036 static void WINAPI wine_glMultiTexCoord2sv( GLenum target, const GLshort* v ) {
6037   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6038   TRACE("(%d, %p)\n", target, v );
6039   funcs->ext.p_glMultiTexCoord2sv( target, v );
6040 }
6041
6042 static void WINAPI wine_glMultiTexCoord2svARB( GLenum target, const GLshort* v ) {
6043   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6044   TRACE("(%d, %p)\n", target, v );
6045   funcs->ext.p_glMultiTexCoord2svARB( target, v );
6046 }
6047
6048 static void WINAPI wine_glMultiTexCoord2svSGIS( GLenum target, GLshort * v ) {
6049   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6050   TRACE("(%d, %p)\n", target, v );
6051   funcs->ext.p_glMultiTexCoord2svSGIS( target, v );
6052 }
6053
6054 static void WINAPI wine_glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r ) {
6055   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6056   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
6057   funcs->ext.p_glMultiTexCoord3d( target, s, t, r );
6058 }
6059
6060 static void WINAPI wine_glMultiTexCoord3dARB( GLenum target, GLdouble s, GLdouble t, GLdouble r ) {
6061   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6062   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
6063   funcs->ext.p_glMultiTexCoord3dARB( target, s, t, r );
6064 }
6065
6066 static void WINAPI wine_glMultiTexCoord3dSGIS( GLenum target, GLdouble s, GLdouble t, GLdouble r ) {
6067   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6068   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
6069   funcs->ext.p_glMultiTexCoord3dSGIS( target, s, t, r );
6070 }
6071
6072 static void WINAPI wine_glMultiTexCoord3dv( GLenum target, const GLdouble* v ) {
6073   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6074   TRACE("(%d, %p)\n", target, v );
6075   funcs->ext.p_glMultiTexCoord3dv( target, v );
6076 }
6077
6078 static void WINAPI wine_glMultiTexCoord3dvARB( GLenum target, const GLdouble* v ) {
6079   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6080   TRACE("(%d, %p)\n", target, v );
6081   funcs->ext.p_glMultiTexCoord3dvARB( target, v );
6082 }
6083
6084 static void WINAPI wine_glMultiTexCoord3dvSGIS( GLenum target, GLdouble * v ) {
6085   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6086   TRACE("(%d, %p)\n", target, v );
6087   funcs->ext.p_glMultiTexCoord3dvSGIS( target, v );
6088 }
6089
6090 static void WINAPI wine_glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r ) {
6091   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6092   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
6093   funcs->ext.p_glMultiTexCoord3f( target, s, t, r );
6094 }
6095
6096 static void WINAPI wine_glMultiTexCoord3fARB( GLenum target, GLfloat s, GLfloat t, GLfloat r ) {
6097   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6098   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
6099   funcs->ext.p_glMultiTexCoord3fARB( target, s, t, r );
6100 }
6101
6102 static void WINAPI wine_glMultiTexCoord3fSGIS( GLenum target, GLfloat s, GLfloat t, GLfloat r ) {
6103   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6104   TRACE("(%d, %f, %f, %f)\n", target, s, t, r );
6105   funcs->ext.p_glMultiTexCoord3fSGIS( target, s, t, r );
6106 }
6107
6108 static void WINAPI wine_glMultiTexCoord3fv( GLenum target, const GLfloat* v ) {
6109   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6110   TRACE("(%d, %p)\n", target, v );
6111   funcs->ext.p_glMultiTexCoord3fv( target, v );
6112 }
6113
6114 static void WINAPI wine_glMultiTexCoord3fvARB( GLenum target, const GLfloat* v ) {
6115   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6116   TRACE("(%d, %p)\n", target, v );
6117   funcs->ext.p_glMultiTexCoord3fvARB( target, v );
6118 }
6119
6120 static void WINAPI wine_glMultiTexCoord3fvSGIS( GLenum target, GLfloat * v ) {
6121   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6122   TRACE("(%d, %p)\n", target, v );
6123   funcs->ext.p_glMultiTexCoord3fvSGIS( target, v );
6124 }
6125
6126 static void WINAPI wine_glMultiTexCoord3hNV( GLenum target, unsigned short s, unsigned short t, unsigned short r ) {
6127   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6128   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
6129   funcs->ext.p_glMultiTexCoord3hNV( target, s, t, r );
6130 }
6131
6132 static void WINAPI wine_glMultiTexCoord3hvNV( GLenum target, const unsigned short* v ) {
6133   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6134   TRACE("(%d, %p)\n", target, v );
6135   funcs->ext.p_glMultiTexCoord3hvNV( target, v );
6136 }
6137
6138 static void WINAPI wine_glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r ) {
6139   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6140   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
6141   funcs->ext.p_glMultiTexCoord3i( target, s, t, r );
6142 }
6143
6144 static void WINAPI wine_glMultiTexCoord3iARB( GLenum target, GLint s, GLint t, GLint r ) {
6145   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6146   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
6147   funcs->ext.p_glMultiTexCoord3iARB( target, s, t, r );
6148 }
6149
6150 static void WINAPI wine_glMultiTexCoord3iSGIS( GLenum target, GLint s, GLint t, GLint r ) {
6151   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6152   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
6153   funcs->ext.p_glMultiTexCoord3iSGIS( target, s, t, r );
6154 }
6155
6156 static void WINAPI wine_glMultiTexCoord3iv( GLenum target, const GLint* v ) {
6157   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6158   TRACE("(%d, %p)\n", target, v );
6159   funcs->ext.p_glMultiTexCoord3iv( target, v );
6160 }
6161
6162 static void WINAPI wine_glMultiTexCoord3ivARB( GLenum target, const GLint* v ) {
6163   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6164   TRACE("(%d, %p)\n", target, v );
6165   funcs->ext.p_glMultiTexCoord3ivARB( target, v );
6166 }
6167
6168 static void WINAPI wine_glMultiTexCoord3ivSGIS( GLenum target, GLint * v ) {
6169   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6170   TRACE("(%d, %p)\n", target, v );
6171   funcs->ext.p_glMultiTexCoord3ivSGIS( target, v );
6172 }
6173
6174 static void WINAPI wine_glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r ) {
6175   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6176   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
6177   funcs->ext.p_glMultiTexCoord3s( target, s, t, r );
6178 }
6179
6180 static void WINAPI wine_glMultiTexCoord3sARB( GLenum target, GLshort s, GLshort t, GLshort r ) {
6181   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6182   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
6183   funcs->ext.p_glMultiTexCoord3sARB( target, s, t, r );
6184 }
6185
6186 static void WINAPI wine_glMultiTexCoord3sSGIS( GLenum target, GLshort s, GLshort t, GLshort r ) {
6187   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6188   TRACE("(%d, %d, %d, %d)\n", target, s, t, r );
6189   funcs->ext.p_glMultiTexCoord3sSGIS( target, s, t, r );
6190 }
6191
6192 static void WINAPI wine_glMultiTexCoord3sv( GLenum target, const GLshort* v ) {
6193   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6194   TRACE("(%d, %p)\n", target, v );
6195   funcs->ext.p_glMultiTexCoord3sv( target, v );
6196 }
6197
6198 static void WINAPI wine_glMultiTexCoord3svARB( GLenum target, const GLshort* v ) {
6199   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6200   TRACE("(%d, %p)\n", target, v );
6201   funcs->ext.p_glMultiTexCoord3svARB( target, v );
6202 }
6203
6204 static void WINAPI wine_glMultiTexCoord3svSGIS( GLenum target, GLshort * v ) {
6205   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6206   TRACE("(%d, %p)\n", target, v );
6207   funcs->ext.p_glMultiTexCoord3svSGIS( target, v );
6208 }
6209
6210 static void WINAPI wine_glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ) {
6211   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6212   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
6213   funcs->ext.p_glMultiTexCoord4d( target, s, t, r, q );
6214 }
6215
6216 static void WINAPI wine_glMultiTexCoord4dARB( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ) {
6217   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6218   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
6219   funcs->ext.p_glMultiTexCoord4dARB( target, s, t, r, q );
6220 }
6221
6222 static void WINAPI wine_glMultiTexCoord4dSGIS( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ) {
6223   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6224   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
6225   funcs->ext.p_glMultiTexCoord4dSGIS( target, s, t, r, q );
6226 }
6227
6228 static void WINAPI wine_glMultiTexCoord4dv( GLenum target, const GLdouble* v ) {
6229   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6230   TRACE("(%d, %p)\n", target, v );
6231   funcs->ext.p_glMultiTexCoord4dv( target, v );
6232 }
6233
6234 static void WINAPI wine_glMultiTexCoord4dvARB( GLenum target, const GLdouble* v ) {
6235   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6236   TRACE("(%d, %p)\n", target, v );
6237   funcs->ext.p_glMultiTexCoord4dvARB( target, v );
6238 }
6239
6240 static void WINAPI wine_glMultiTexCoord4dvSGIS( GLenum target, GLdouble * v ) {
6241   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6242   TRACE("(%d, %p)\n", target, v );
6243   funcs->ext.p_glMultiTexCoord4dvSGIS( target, v );
6244 }
6245
6246 static void WINAPI wine_glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) {
6247   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6248   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
6249   funcs->ext.p_glMultiTexCoord4f( target, s, t, r, q );
6250 }
6251
6252 static void WINAPI wine_glMultiTexCoord4fARB( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) {
6253   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6254   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
6255   funcs->ext.p_glMultiTexCoord4fARB( target, s, t, r, q );
6256 }
6257
6258 static void WINAPI wine_glMultiTexCoord4fSGIS( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) {
6259   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6260   TRACE("(%d, %f, %f, %f, %f)\n", target, s, t, r, q );
6261   funcs->ext.p_glMultiTexCoord4fSGIS( target, s, t, r, q );
6262 }
6263
6264 static void WINAPI wine_glMultiTexCoord4fv( GLenum target, const GLfloat* v ) {
6265   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6266   TRACE("(%d, %p)\n", target, v );
6267   funcs->ext.p_glMultiTexCoord4fv( target, v );
6268 }
6269
6270 static void WINAPI wine_glMultiTexCoord4fvARB( GLenum target, const GLfloat* v ) {
6271   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6272   TRACE("(%d, %p)\n", target, v );
6273   funcs->ext.p_glMultiTexCoord4fvARB( target, v );
6274 }
6275
6276 static void WINAPI wine_glMultiTexCoord4fvSGIS( GLenum target, GLfloat * v ) {
6277   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6278   TRACE("(%d, %p)\n", target, v );
6279   funcs->ext.p_glMultiTexCoord4fvSGIS( target, v );
6280 }
6281
6282 static void WINAPI wine_glMultiTexCoord4hNV( GLenum target, unsigned short s, unsigned short t, unsigned short r, unsigned short q ) {
6283   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6284   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
6285   funcs->ext.p_glMultiTexCoord4hNV( target, s, t, r, q );
6286 }
6287
6288 static void WINAPI wine_glMultiTexCoord4hvNV( GLenum target, const unsigned short* v ) {
6289   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6290   TRACE("(%d, %p)\n", target, v );
6291   funcs->ext.p_glMultiTexCoord4hvNV( target, v );
6292 }
6293
6294 static void WINAPI wine_glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q ) {
6295   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6296   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
6297   funcs->ext.p_glMultiTexCoord4i( target, s, t, r, q );
6298 }
6299
6300 static void WINAPI wine_glMultiTexCoord4iARB( GLenum target, GLint s, GLint t, GLint r, GLint q ) {
6301   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6302   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
6303   funcs->ext.p_glMultiTexCoord4iARB( target, s, t, r, q );
6304 }
6305
6306 static void WINAPI wine_glMultiTexCoord4iSGIS( GLenum target, GLint s, GLint t, GLint r, GLint q ) {
6307   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6308   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
6309   funcs->ext.p_glMultiTexCoord4iSGIS( target, s, t, r, q );
6310 }
6311
6312 static void WINAPI wine_glMultiTexCoord4iv( GLenum target, const GLint* v ) {
6313   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6314   TRACE("(%d, %p)\n", target, v );
6315   funcs->ext.p_glMultiTexCoord4iv( target, v );
6316 }
6317
6318 static void WINAPI wine_glMultiTexCoord4ivARB( GLenum target, const GLint* v ) {
6319   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6320   TRACE("(%d, %p)\n", target, v );
6321   funcs->ext.p_glMultiTexCoord4ivARB( target, v );
6322 }
6323
6324 static void WINAPI wine_glMultiTexCoord4ivSGIS( GLenum target, GLint * v ) {
6325   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6326   TRACE("(%d, %p)\n", target, v );
6327   funcs->ext.p_glMultiTexCoord4ivSGIS( target, v );
6328 }
6329
6330 static void WINAPI wine_glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ) {
6331   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6332   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
6333   funcs->ext.p_glMultiTexCoord4s( target, s, t, r, q );
6334 }
6335
6336 static void WINAPI wine_glMultiTexCoord4sARB( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ) {
6337   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6338   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
6339   funcs->ext.p_glMultiTexCoord4sARB( target, s, t, r, q );
6340 }
6341
6342 static void WINAPI wine_glMultiTexCoord4sSGIS( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ) {
6343   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6344   TRACE("(%d, %d, %d, %d, %d)\n", target, s, t, r, q );
6345   funcs->ext.p_glMultiTexCoord4sSGIS( target, s, t, r, q );
6346 }
6347
6348 static void WINAPI wine_glMultiTexCoord4sv( GLenum target, const GLshort* v ) {
6349   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6350   TRACE("(%d, %p)\n", target, v );
6351   funcs->ext.p_glMultiTexCoord4sv( target, v );
6352 }
6353
6354 static void WINAPI wine_glMultiTexCoord4svARB( GLenum target, const GLshort* v ) {
6355   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6356   TRACE("(%d, %p)\n", target, v );
6357   funcs->ext.p_glMultiTexCoord4svARB( target, v );
6358 }
6359
6360 static void WINAPI wine_glMultiTexCoord4svSGIS( GLenum target, GLshort * v ) {
6361   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6362   TRACE("(%d, %p)\n", target, v );
6363   funcs->ext.p_glMultiTexCoord4svSGIS( target, v );
6364 }
6365
6366 static void WINAPI wine_glMultiTexCoordP1ui( GLenum texture, GLenum type, GLuint coords ) {
6367   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6368   TRACE("(%d, %d, %d)\n", texture, type, coords );
6369   funcs->ext.p_glMultiTexCoordP1ui( texture, type, coords );
6370 }
6371
6372 static void WINAPI wine_glMultiTexCoordP1uiv( GLenum texture, GLenum type, const GLuint* coords ) {
6373   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6374   TRACE("(%d, %d, %p)\n", texture, type, coords );
6375   funcs->ext.p_glMultiTexCoordP1uiv( texture, type, coords );
6376 }
6377
6378 static void WINAPI wine_glMultiTexCoordP2ui( GLenum texture, GLenum type, GLuint coords ) {
6379   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6380   TRACE("(%d, %d, %d)\n", texture, type, coords );
6381   funcs->ext.p_glMultiTexCoordP2ui( texture, type, coords );
6382 }
6383
6384 static void WINAPI wine_glMultiTexCoordP2uiv( GLenum texture, GLenum type, const GLuint* coords ) {
6385   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6386   TRACE("(%d, %d, %p)\n", texture, type, coords );
6387   funcs->ext.p_glMultiTexCoordP2uiv( texture, type, coords );
6388 }
6389
6390 static void WINAPI wine_glMultiTexCoordP3ui( GLenum texture, GLenum type, GLuint coords ) {
6391   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6392   TRACE("(%d, %d, %d)\n", texture, type, coords );
6393   funcs->ext.p_glMultiTexCoordP3ui( texture, type, coords );
6394 }
6395
6396 static void WINAPI wine_glMultiTexCoordP3uiv( GLenum texture, GLenum type, const GLuint* coords ) {
6397   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6398   TRACE("(%d, %d, %p)\n", texture, type, coords );
6399   funcs->ext.p_glMultiTexCoordP3uiv( texture, type, coords );
6400 }
6401
6402 static void WINAPI wine_glMultiTexCoordP4ui( GLenum texture, GLenum type, GLuint coords ) {
6403   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6404   TRACE("(%d, %d, %d)\n", texture, type, coords );
6405   funcs->ext.p_glMultiTexCoordP4ui( texture, type, coords );
6406 }
6407
6408 static void WINAPI wine_glMultiTexCoordP4uiv( GLenum texture, GLenum type, const GLuint* coords ) {
6409   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6410   TRACE("(%d, %d, %p)\n", texture, type, coords );
6411   funcs->ext.p_glMultiTexCoordP4uiv( texture, type, coords );
6412 }
6413
6414 static void WINAPI wine_glMultiTexCoordPointerEXT( GLenum texunit, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
6415   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6416   TRACE("(%d, %d, %d, %d, %p)\n", texunit, size, type, stride, pointer );
6417   funcs->ext.p_glMultiTexCoordPointerEXT( texunit, size, type, stride, pointer );
6418 }
6419
6420 static void WINAPI wine_glMultiTexCoordPointerSGIS( GLenum target, GLint size, GLenum type, GLsizei stride, GLvoid * pointer ) {
6421   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6422   TRACE("(%d, %d, %d, %d, %p)\n", target, size, type, stride, pointer );
6423   funcs->ext.p_glMultiTexCoordPointerSGIS( target, size, type, stride, pointer );
6424 }
6425
6426 static void WINAPI wine_glMultiTexEnvfEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat param ) {
6427   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6428   TRACE("(%d, %d, %d, %f)\n", texunit, target, pname, param );
6429   funcs->ext.p_glMultiTexEnvfEXT( texunit, target, pname, param );
6430 }
6431
6432 static void WINAPI wine_glMultiTexEnvfvEXT( GLenum texunit, GLenum target, GLenum pname, const GLfloat* params ) {
6433   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6434   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6435   funcs->ext.p_glMultiTexEnvfvEXT( texunit, target, pname, params );
6436 }
6437
6438 static void WINAPI wine_glMultiTexEnviEXT( GLenum texunit, GLenum target, GLenum pname, GLint param ) {
6439   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6440   TRACE("(%d, %d, %d, %d)\n", texunit, target, pname, param );
6441   funcs->ext.p_glMultiTexEnviEXT( texunit, target, pname, param );
6442 }
6443
6444 static void WINAPI wine_glMultiTexEnvivEXT( GLenum texunit, GLenum target, GLenum pname, const GLint* params ) {
6445   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6446   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6447   funcs->ext.p_glMultiTexEnvivEXT( texunit, target, pname, params );
6448 }
6449
6450 static void WINAPI wine_glMultiTexGendEXT( GLenum texunit, GLenum coord, GLenum pname, GLdouble param ) {
6451   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6452   TRACE("(%d, %d, %d, %f)\n", texunit, coord, pname, param );
6453   funcs->ext.p_glMultiTexGendEXT( texunit, coord, pname, param );
6454 }
6455
6456 static void WINAPI wine_glMultiTexGendvEXT( GLenum texunit, GLenum coord, GLenum pname, const GLdouble* params ) {
6457   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6458   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
6459   funcs->ext.p_glMultiTexGendvEXT( texunit, coord, pname, params );
6460 }
6461
6462 static void WINAPI wine_glMultiTexGenfEXT( GLenum texunit, GLenum coord, GLenum pname, GLfloat param ) {
6463   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6464   TRACE("(%d, %d, %d, %f)\n", texunit, coord, pname, param );
6465   funcs->ext.p_glMultiTexGenfEXT( texunit, coord, pname, param );
6466 }
6467
6468 static void WINAPI wine_glMultiTexGenfvEXT( GLenum texunit, GLenum coord, GLenum pname, const GLfloat* params ) {
6469   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6470   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
6471   funcs->ext.p_glMultiTexGenfvEXT( texunit, coord, pname, params );
6472 }
6473
6474 static void WINAPI wine_glMultiTexGeniEXT( GLenum texunit, GLenum coord, GLenum pname, GLint param ) {
6475   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6476   TRACE("(%d, %d, %d, %d)\n", texunit, coord, pname, param );
6477   funcs->ext.p_glMultiTexGeniEXT( texunit, coord, pname, param );
6478 }
6479
6480 static void WINAPI wine_glMultiTexGenivEXT( GLenum texunit, GLenum coord, GLenum pname, const GLint* params ) {
6481   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6482   TRACE("(%d, %d, %d, %p)\n", texunit, coord, pname, params );
6483   funcs->ext.p_glMultiTexGenivEXT( texunit, coord, pname, params );
6484 }
6485
6486 static void WINAPI wine_glMultiTexImage1DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) {
6487   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6488   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, border, format, type, pixels );
6489   funcs->ext.p_glMultiTexImage1DEXT( texunit, target, level, internalformat, width, border, format, type, pixels );
6490 }
6491
6492 static void WINAPI wine_glMultiTexImage2DEXT( GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) {
6493   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6494   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, height, border, format, type, pixels );
6495   funcs->ext.p_glMultiTexImage2DEXT( texunit, target, level, internalformat, width, height, border, format, type, pixels );
6496 }
6497
6498 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, const GLvoid* pixels ) {
6499   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6500   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, internalformat, width, height, depth, border, format, type, pixels );
6501   funcs->ext.p_glMultiTexImage3DEXT( texunit, target, level, internalformat, width, height, depth, border, format, type, pixels );
6502 }
6503
6504 static void WINAPI wine_glMultiTexParameterIivEXT( GLenum texunit, GLenum target, GLenum pname, const GLint* params ) {
6505   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6506   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6507   funcs->ext.p_glMultiTexParameterIivEXT( texunit, target, pname, params );
6508 }
6509
6510 static void WINAPI wine_glMultiTexParameterIuivEXT( GLenum texunit, GLenum target, GLenum pname, const GLuint* params ) {
6511   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6512   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6513   funcs->ext.p_glMultiTexParameterIuivEXT( texunit, target, pname, params );
6514 }
6515
6516 static void WINAPI wine_glMultiTexParameterfEXT( GLenum texunit, GLenum target, GLenum pname, GLfloat param ) {
6517   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6518   TRACE("(%d, %d, %d, %f)\n", texunit, target, pname, param );
6519   funcs->ext.p_glMultiTexParameterfEXT( texunit, target, pname, param );
6520 }
6521
6522 static void WINAPI wine_glMultiTexParameterfvEXT( GLenum texunit, GLenum target, GLenum pname, const GLfloat* params ) {
6523   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6524   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6525   funcs->ext.p_glMultiTexParameterfvEXT( texunit, target, pname, params );
6526 }
6527
6528 static void WINAPI wine_glMultiTexParameteriEXT( GLenum texunit, GLenum target, GLenum pname, GLint param ) {
6529   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6530   TRACE("(%d, %d, %d, %d)\n", texunit, target, pname, param );
6531   funcs->ext.p_glMultiTexParameteriEXT( texunit, target, pname, param );
6532 }
6533
6534 static void WINAPI wine_glMultiTexParameterivEXT( GLenum texunit, GLenum target, GLenum pname, const GLint* params ) {
6535   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6536   TRACE("(%d, %d, %d, %p)\n", texunit, target, pname, params );
6537   funcs->ext.p_glMultiTexParameterivEXT( texunit, target, pname, params );
6538 }
6539
6540 static void WINAPI wine_glMultiTexRenderbufferEXT( GLenum texunit, GLenum target, GLuint renderbuffer ) {
6541   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6542   TRACE("(%d, %d, %d)\n", texunit, target, renderbuffer );
6543   funcs->ext.p_glMultiTexRenderbufferEXT( texunit, target, renderbuffer );
6544 }
6545
6546 static void WINAPI wine_glMultiTexSubImage1DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid* pixels ) {
6547   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6548   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, width, format, type, pixels );
6549   funcs->ext.p_glMultiTexSubImage1DEXT( texunit, target, level, xoffset, width, format, type, pixels );
6550 }
6551
6552 static void WINAPI wine_glMultiTexSubImage2DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels ) {
6553   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6554   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texunit, target, level, xoffset, yoffset, width, height, format, type, pixels );
6555   funcs->ext.p_glMultiTexSubImage2DEXT( texunit, target, level, xoffset, yoffset, width, height, format, type, pixels );
6556 }
6557
6558 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, const GLvoid* pixels ) {
6559   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6560   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 );
6561   funcs->ext.p_glMultiTexSubImage3DEXT( texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
6562 }
6563
6564 static void WINAPI wine_glNamedBufferDataEXT( GLuint buffer, INT_PTR size, const GLvoid* data, GLenum usage ) {
6565   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6566   TRACE("(%d, %ld, %p, %d)\n", buffer, size, data, usage );
6567   funcs->ext.p_glNamedBufferDataEXT( buffer, size, data, usage );
6568 }
6569
6570 static void WINAPI wine_glNamedBufferSubDataEXT( GLuint buffer, INT_PTR offset, INT_PTR size, const GLvoid* data ) {
6571   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6572   TRACE("(%d, %ld, %ld, %p)\n", buffer, offset, size, data );
6573   funcs->ext.p_glNamedBufferSubDataEXT( buffer, offset, size, data );
6574 }
6575
6576 static void WINAPI wine_glNamedCopyBufferSubDataEXT( GLuint readBuffer, GLuint writeBuffer, INT_PTR readOffset, INT_PTR writeOffset, INT_PTR size ) {
6577   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6578   TRACE("(%d, %d, %ld, %ld, %ld)\n", readBuffer, writeBuffer, readOffset, writeOffset, size );
6579   funcs->ext.p_glNamedCopyBufferSubDataEXT( readBuffer, writeBuffer, readOffset, writeOffset, size );
6580 }
6581
6582 static void WINAPI wine_glNamedFramebufferParameteriEXT( GLuint framebuffer, GLenum pname, GLint param ) {
6583   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6584   TRACE("(%d, %d, %d)\n", framebuffer, pname, param );
6585   funcs->ext.p_glNamedFramebufferParameteriEXT( framebuffer, pname, param );
6586 }
6587
6588 static void WINAPI wine_glNamedFramebufferRenderbufferEXT( GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) {
6589   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6590   TRACE("(%d, %d, %d, %d)\n", framebuffer, attachment, renderbuffertarget, renderbuffer );
6591   funcs->ext.p_glNamedFramebufferRenderbufferEXT( framebuffer, attachment, renderbuffertarget, renderbuffer );
6592 }
6593
6594 static void WINAPI wine_glNamedFramebufferTexture1DEXT( GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
6595   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6596   TRACE("(%d, %d, %d, %d, %d)\n", framebuffer, attachment, textarget, texture, level );
6597   funcs->ext.p_glNamedFramebufferTexture1DEXT( framebuffer, attachment, textarget, texture, level );
6598 }
6599
6600 static void WINAPI wine_glNamedFramebufferTexture2DEXT( GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) {
6601   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6602   TRACE("(%d, %d, %d, %d, %d)\n", framebuffer, attachment, textarget, texture, level );
6603   funcs->ext.p_glNamedFramebufferTexture2DEXT( framebuffer, attachment, textarget, texture, level );
6604 }
6605
6606 static void WINAPI wine_glNamedFramebufferTexture3DEXT( GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset ) {
6607   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6608   TRACE("(%d, %d, %d, %d, %d, %d)\n", framebuffer, attachment, textarget, texture, level, zoffset );
6609   funcs->ext.p_glNamedFramebufferTexture3DEXT( framebuffer, attachment, textarget, texture, level, zoffset );
6610 }
6611
6612 static void WINAPI wine_glNamedFramebufferTextureEXT( GLuint framebuffer, GLenum attachment, GLuint texture, GLint level ) {
6613   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6614   TRACE("(%d, %d, %d, %d)\n", framebuffer, attachment, texture, level );
6615   funcs->ext.p_glNamedFramebufferTextureEXT( framebuffer, attachment, texture, level );
6616 }
6617
6618 static void WINAPI wine_glNamedFramebufferTextureFaceEXT( GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face ) {
6619   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6620   TRACE("(%d, %d, %d, %d, %d)\n", framebuffer, attachment, texture, level, face );
6621   funcs->ext.p_glNamedFramebufferTextureFaceEXT( framebuffer, attachment, texture, level, face );
6622 }
6623
6624 static void WINAPI wine_glNamedFramebufferTextureLayerEXT( GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer ) {
6625   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6626   TRACE("(%d, %d, %d, %d, %d)\n", framebuffer, attachment, texture, level, layer );
6627   funcs->ext.p_glNamedFramebufferTextureLayerEXT( framebuffer, attachment, texture, level, layer );
6628 }
6629
6630 static void WINAPI wine_glNamedProgramLocalParameter4dEXT( GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
6631   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6632   TRACE("(%d, %d, %d, %f, %f, %f, %f)\n", program, target, index, x, y, z, w );
6633   funcs->ext.p_glNamedProgramLocalParameter4dEXT( program, target, index, x, y, z, w );
6634 }
6635
6636 static void WINAPI wine_glNamedProgramLocalParameter4dvEXT( GLuint program, GLenum target, GLuint index, const GLdouble* params ) {
6637   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6638   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
6639   funcs->ext.p_glNamedProgramLocalParameter4dvEXT( program, target, index, params );
6640 }
6641
6642 static void WINAPI wine_glNamedProgramLocalParameter4fEXT( GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
6643   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6644   TRACE("(%d, %d, %d, %f, %f, %f, %f)\n", program, target, index, x, y, z, w );
6645   funcs->ext.p_glNamedProgramLocalParameter4fEXT( program, target, index, x, y, z, w );
6646 }
6647
6648 static void WINAPI wine_glNamedProgramLocalParameter4fvEXT( GLuint program, GLenum target, GLuint index, const GLfloat* params ) {
6649   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6650   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
6651   funcs->ext.p_glNamedProgramLocalParameter4fvEXT( program, target, index, params );
6652 }
6653
6654 static void WINAPI wine_glNamedProgramLocalParameterI4iEXT( GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w ) {
6655   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6656   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", program, target, index, x, y, z, w );
6657   funcs->ext.p_glNamedProgramLocalParameterI4iEXT( program, target, index, x, y, z, w );
6658 }
6659
6660 static void WINAPI wine_glNamedProgramLocalParameterI4ivEXT( GLuint program, GLenum target, GLuint index, const GLint* params ) {
6661   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6662   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
6663   funcs->ext.p_glNamedProgramLocalParameterI4ivEXT( program, target, index, params );
6664 }
6665
6666 static void WINAPI wine_glNamedProgramLocalParameterI4uiEXT( GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
6667   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6668   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", program, target, index, x, y, z, w );
6669   funcs->ext.p_glNamedProgramLocalParameterI4uiEXT( program, target, index, x, y, z, w );
6670 }
6671
6672 static void WINAPI wine_glNamedProgramLocalParameterI4uivEXT( GLuint program, GLenum target, GLuint index, const GLuint* params ) {
6673   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6674   TRACE("(%d, %d, %d, %p)\n", program, target, index, params );
6675   funcs->ext.p_glNamedProgramLocalParameterI4uivEXT( program, target, index, params );
6676 }
6677
6678 static void WINAPI wine_glNamedProgramLocalParameters4fvEXT( GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat* params ) {
6679   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6680   TRACE("(%d, %d, %d, %d, %p)\n", program, target, index, count, params );
6681   funcs->ext.p_glNamedProgramLocalParameters4fvEXT( program, target, index, count, params );
6682 }
6683
6684 static void WINAPI wine_glNamedProgramLocalParametersI4ivEXT( GLuint program, GLenum target, GLuint index, GLsizei count, const GLint* params ) {
6685   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6686   TRACE("(%d, %d, %d, %d, %p)\n", program, target, index, count, params );
6687   funcs->ext.p_glNamedProgramLocalParametersI4ivEXT( program, target, index, count, params );
6688 }
6689
6690 static void WINAPI wine_glNamedProgramLocalParametersI4uivEXT( GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint* params ) {
6691   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6692   TRACE("(%d, %d, %d, %d, %p)\n", program, target, index, count, params );
6693   funcs->ext.p_glNamedProgramLocalParametersI4uivEXT( program, target, index, count, params );
6694 }
6695
6696 static void WINAPI wine_glNamedProgramStringEXT( GLuint program, GLenum target, GLenum format, GLsizei len, const GLvoid* string ) {
6697   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6698   TRACE("(%d, %d, %d, %d, %p)\n", program, target, format, len, string );
6699   funcs->ext.p_glNamedProgramStringEXT( program, target, format, len, string );
6700 }
6701
6702 static void WINAPI wine_glNamedRenderbufferStorageEXT( GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height ) {
6703   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6704   TRACE("(%d, %d, %d, %d)\n", renderbuffer, internalformat, width, height );
6705   funcs->ext.p_glNamedRenderbufferStorageEXT( renderbuffer, internalformat, width, height );
6706 }
6707
6708 static void WINAPI wine_glNamedRenderbufferStorageMultisampleCoverageEXT( GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height ) {
6709   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6710   TRACE("(%d, %d, %d, %d, %d, %d)\n", renderbuffer, coverageSamples, colorSamples, internalformat, width, height );
6711   funcs->ext.p_glNamedRenderbufferStorageMultisampleCoverageEXT( renderbuffer, coverageSamples, colorSamples, internalformat, width, height );
6712 }
6713
6714 static void WINAPI wine_glNamedRenderbufferStorageMultisampleEXT( GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) {
6715   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6716   TRACE("(%d, %d, %d, %d, %d)\n", renderbuffer, samples, internalformat, width, height );
6717   funcs->ext.p_glNamedRenderbufferStorageMultisampleEXT( renderbuffer, samples, internalformat, width, height );
6718 }
6719
6720 static void WINAPI wine_glNamedStringARB( GLenum type, GLint namelen, const char* name, GLint stringlen, const char* string ) {
6721   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6722   TRACE("(%d, %d, %p, %d, %p)\n", type, namelen, name, stringlen, string );
6723   funcs->ext.p_glNamedStringARB( type, namelen, name, stringlen, string );
6724 }
6725
6726 static GLuint WINAPI wine_glNewBufferRegion( GLenum type ) {
6727   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6728   TRACE("(%d)\n", type );
6729   return funcs->ext.p_glNewBufferRegion( type );
6730 }
6731
6732 static GLuint WINAPI wine_glNewObjectBufferATI( GLsizei size, const GLvoid* pointer, GLenum usage ) {
6733   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6734   TRACE("(%d, %p, %d)\n", size, pointer, usage );
6735   return funcs->ext.p_glNewObjectBufferATI( size, pointer, usage );
6736 }
6737
6738 static void WINAPI wine_glNormal3fVertex3fSUN( GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
6739   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6740   TRACE("(%f, %f, %f, %f, %f, %f)\n", nx, ny, nz, x, y, z );
6741   funcs->ext.p_glNormal3fVertex3fSUN( nx, ny, nz, x, y, z );
6742 }
6743
6744 static void WINAPI wine_glNormal3fVertex3fvSUN( const GLfloat* n, const GLfloat* v ) {
6745   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6746   TRACE("(%p, %p)\n", n, v );
6747   funcs->ext.p_glNormal3fVertex3fvSUN( n, v );
6748 }
6749
6750 static void WINAPI wine_glNormal3hNV( unsigned short nx, unsigned short ny, unsigned short nz ) {
6751   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6752   TRACE("(%d, %d, %d)\n", nx, ny, nz );
6753   funcs->ext.p_glNormal3hNV( nx, ny, nz );
6754 }
6755
6756 static void WINAPI wine_glNormal3hvNV( const unsigned short* v ) {
6757   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6758   TRACE("(%p)\n", v );
6759   funcs->ext.p_glNormal3hvNV( v );
6760 }
6761
6762 static void WINAPI wine_glNormalFormatNV( GLenum type, GLsizei stride ) {
6763   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6764   TRACE("(%d, %d)\n", type, stride );
6765   funcs->ext.p_glNormalFormatNV( type, stride );
6766 }
6767
6768 static void WINAPI wine_glNormalP3ui( GLenum type, GLuint coords ) {
6769   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6770   TRACE("(%d, %d)\n", type, coords );
6771   funcs->ext.p_glNormalP3ui( type, coords );
6772 }
6773
6774 static void WINAPI wine_glNormalP3uiv( GLenum type, const GLuint* coords ) {
6775   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6776   TRACE("(%d, %p)\n", type, coords );
6777   funcs->ext.p_glNormalP3uiv( type, coords );
6778 }
6779
6780 static void WINAPI wine_glNormalPointerEXT( GLenum type, GLsizei stride, GLsizei count, const GLvoid* pointer ) {
6781   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6782   TRACE("(%d, %d, %d, %p)\n", type, stride, count, pointer );
6783   funcs->ext.p_glNormalPointerEXT( type, stride, count, pointer );
6784 }
6785
6786 static void WINAPI wine_glNormalPointerListIBM( GLenum type, GLint stride, const GLvoid** pointer, GLint ptrstride ) {
6787   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6788   TRACE("(%d, %d, %p, %d)\n", type, stride, pointer, ptrstride );
6789   funcs->ext.p_glNormalPointerListIBM( type, stride, pointer, ptrstride );
6790 }
6791
6792 static void WINAPI wine_glNormalPointervINTEL( GLenum type, const GLvoid** pointer ) {
6793   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6794   TRACE("(%d, %p)\n", type, pointer );
6795   funcs->ext.p_glNormalPointervINTEL( type, pointer );
6796 }
6797
6798 static void WINAPI wine_glNormalStream3bATI( GLenum stream, GLbyte nx, GLbyte ny, GLbyte nz ) {
6799   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6800   TRACE("(%d, %d, %d, %d)\n", stream, nx, ny, nz );
6801   funcs->ext.p_glNormalStream3bATI( stream, nx, ny, nz );
6802 }
6803
6804 static void WINAPI wine_glNormalStream3bvATI( GLenum stream, const GLbyte* coords ) {
6805   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6806   TRACE("(%d, %p)\n", stream, coords );
6807   funcs->ext.p_glNormalStream3bvATI( stream, coords );
6808 }
6809
6810 static void WINAPI wine_glNormalStream3dATI( GLenum stream, GLdouble nx, GLdouble ny, GLdouble nz ) {
6811   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6812   TRACE("(%d, %f, %f, %f)\n", stream, nx, ny, nz );
6813   funcs->ext.p_glNormalStream3dATI( stream, nx, ny, nz );
6814 }
6815
6816 static void WINAPI wine_glNormalStream3dvATI( GLenum stream, const GLdouble* coords ) {
6817   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6818   TRACE("(%d, %p)\n", stream, coords );
6819   funcs->ext.p_glNormalStream3dvATI( stream, coords );
6820 }
6821
6822 static void WINAPI wine_glNormalStream3fATI( GLenum stream, GLfloat nx, GLfloat ny, GLfloat nz ) {
6823   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6824   TRACE("(%d, %f, %f, %f)\n", stream, nx, ny, nz );
6825   funcs->ext.p_glNormalStream3fATI( stream, nx, ny, nz );
6826 }
6827
6828 static void WINAPI wine_glNormalStream3fvATI( GLenum stream, const GLfloat* coords ) {
6829   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6830   TRACE("(%d, %p)\n", stream, coords );
6831   funcs->ext.p_glNormalStream3fvATI( stream, coords );
6832 }
6833
6834 static void WINAPI wine_glNormalStream3iATI( GLenum stream, GLint nx, GLint ny, GLint nz ) {
6835   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6836   TRACE("(%d, %d, %d, %d)\n", stream, nx, ny, nz );
6837   funcs->ext.p_glNormalStream3iATI( stream, nx, ny, nz );
6838 }
6839
6840 static void WINAPI wine_glNormalStream3ivATI( GLenum stream, const GLint* coords ) {
6841   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6842   TRACE("(%d, %p)\n", stream, coords );
6843   funcs->ext.p_glNormalStream3ivATI( stream, coords );
6844 }
6845
6846 static void WINAPI wine_glNormalStream3sATI( GLenum stream, GLshort nx, GLshort ny, GLshort nz ) {
6847   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6848   TRACE("(%d, %d, %d, %d)\n", stream, nx, ny, nz );
6849   funcs->ext.p_glNormalStream3sATI( stream, nx, ny, nz );
6850 }
6851
6852 static void WINAPI wine_glNormalStream3svATI( GLenum stream, const GLshort* coords ) {
6853   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6854   TRACE("(%d, %p)\n", stream, coords );
6855   funcs->ext.p_glNormalStream3svATI( stream, coords );
6856 }
6857
6858 static void WINAPI wine_glObjectLabel( GLenum identifier, GLuint name, GLsizei length, const char* label ) {
6859   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6860   TRACE("(%d, %d, %d, %p)\n", identifier, name, length, label );
6861   funcs->ext.p_glObjectLabel( identifier, name, length, label );
6862 }
6863
6864 static void WINAPI wine_glObjectPtrLabel( const void* ptr, GLsizei length, const char* label ) {
6865   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6866   TRACE("(%p, %d, %p)\n", ptr, length, label );
6867   funcs->ext.p_glObjectPtrLabel( ptr, length, label );
6868 }
6869
6870 static GLenum WINAPI wine_glObjectPurgeableAPPLE( GLenum objectType, GLuint name, GLenum option ) {
6871   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6872   TRACE("(%d, %d, %d)\n", objectType, name, option );
6873   return funcs->ext.p_glObjectPurgeableAPPLE( objectType, name, option );
6874 }
6875
6876 static GLenum WINAPI wine_glObjectUnpurgeableAPPLE( GLenum objectType, GLuint name, GLenum option ) {
6877   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6878   TRACE("(%d, %d, %d)\n", objectType, name, option );
6879   return funcs->ext.p_glObjectUnpurgeableAPPLE( objectType, name, option );
6880 }
6881
6882 static void WINAPI wine_glPNTrianglesfATI( GLenum pname, GLfloat param ) {
6883   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6884   TRACE("(%d, %f)\n", pname, param );
6885   funcs->ext.p_glPNTrianglesfATI( pname, param );
6886 }
6887
6888 static void WINAPI wine_glPNTrianglesiATI( GLenum pname, GLint param ) {
6889   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6890   TRACE("(%d, %d)\n", pname, param );
6891   funcs->ext.p_glPNTrianglesiATI( pname, param );
6892 }
6893
6894 static void WINAPI wine_glPassTexCoordATI( GLuint dst, GLuint coord, GLenum swizzle ) {
6895   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6896   TRACE("(%d, %d, %d)\n", dst, coord, swizzle );
6897   funcs->ext.p_glPassTexCoordATI( dst, coord, swizzle );
6898 }
6899
6900 static void WINAPI wine_glPatchParameterfv( GLenum pname, const GLfloat* values ) {
6901   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6902   TRACE("(%d, %p)\n", pname, values );
6903   funcs->ext.p_glPatchParameterfv( pname, values );
6904 }
6905
6906 static void WINAPI wine_glPatchParameteri( GLenum pname, GLint value ) {
6907   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6908   TRACE("(%d, %d)\n", pname, value );
6909   funcs->ext.p_glPatchParameteri( pname, value );
6910 }
6911
6912 static void WINAPI wine_glPathColorGenNV( GLenum color, GLenum genMode, GLenum colorFormat, const GLfloat* coeffs ) {
6913   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6914   TRACE("(%d, %d, %d, %p)\n", color, genMode, colorFormat, coeffs );
6915   funcs->ext.p_glPathColorGenNV( color, genMode, colorFormat, coeffs );
6916 }
6917
6918 static void WINAPI wine_glPathCommandsNV( GLuint path, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const GLvoid* coords ) {
6919   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6920   TRACE("(%d, %d, %p, %d, %d, %p)\n", path, numCommands, commands, numCoords, coordType, coords );
6921   funcs->ext.p_glPathCommandsNV( path, numCommands, commands, numCoords, coordType, coords );
6922 }
6923
6924 static void WINAPI wine_glPathCoordsNV( GLuint path, GLsizei numCoords, GLenum coordType, const GLvoid* coords ) {
6925   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6926   TRACE("(%d, %d, %d, %p)\n", path, numCoords, coordType, coords );
6927   funcs->ext.p_glPathCoordsNV( path, numCoords, coordType, coords );
6928 }
6929
6930 static void WINAPI wine_glPathCoverDepthFuncNV( GLenum func ) {
6931   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6932   TRACE("(%d)\n", func );
6933   funcs->ext.p_glPathCoverDepthFuncNV( func );
6934 }
6935
6936 static void WINAPI wine_glPathDashArrayNV( GLuint path, GLsizei dashCount, const GLfloat* dashArray ) {
6937   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6938   TRACE("(%d, %d, %p)\n", path, dashCount, dashArray );
6939   funcs->ext.p_glPathDashArrayNV( path, dashCount, dashArray );
6940 }
6941
6942 static void WINAPI wine_glPathFogGenNV( GLenum genMode ) {
6943   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6944   TRACE("(%d)\n", genMode );
6945   funcs->ext.p_glPathFogGenNV( genMode );
6946 }
6947
6948 static void WINAPI wine_glPathGlyphRangeNV( GLuint firstPathName, GLenum fontTarget, const GLvoid* fontName, GLbitfield fontStyle, GLuint firstGlyph, GLsizei numGlyphs, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale ) {
6949   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6950   TRACE("(%d, %d, %p, %d, %d, %d, %d, %d, %f)\n", firstPathName, fontTarget, fontName, fontStyle, firstGlyph, numGlyphs, handleMissingGlyphs, pathParameterTemplate, emScale );
6951   funcs->ext.p_glPathGlyphRangeNV( firstPathName, fontTarget, fontName, fontStyle, firstGlyph, numGlyphs, handleMissingGlyphs, pathParameterTemplate, emScale );
6952 }
6953
6954 static void WINAPI wine_glPathGlyphsNV( GLuint firstPathName, GLenum fontTarget, const GLvoid* fontName, GLbitfield fontStyle, GLsizei numGlyphs, GLenum type, const GLvoid* charcodes, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale ) {
6955   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6956   TRACE("(%d, %d, %p, %d, %d, %d, %p, %d, %d, %f)\n", firstPathName, fontTarget, fontName, fontStyle, numGlyphs, type, charcodes, handleMissingGlyphs, pathParameterTemplate, emScale );
6957   funcs->ext.p_glPathGlyphsNV( firstPathName, fontTarget, fontName, fontStyle, numGlyphs, type, charcodes, handleMissingGlyphs, pathParameterTemplate, emScale );
6958 }
6959
6960 static void WINAPI wine_glPathParameterfNV( GLuint path, GLenum pname, GLfloat value ) {
6961   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6962   TRACE("(%d, %d, %f)\n", path, pname, value );
6963   funcs->ext.p_glPathParameterfNV( path, pname, value );
6964 }
6965
6966 static void WINAPI wine_glPathParameterfvNV( GLuint path, GLenum pname, const GLfloat* value ) {
6967   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6968   TRACE("(%d, %d, %p)\n", path, pname, value );
6969   funcs->ext.p_glPathParameterfvNV( path, pname, value );
6970 }
6971
6972 static void WINAPI wine_glPathParameteriNV( GLuint path, GLenum pname, GLint value ) {
6973   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6974   TRACE("(%d, %d, %d)\n", path, pname, value );
6975   funcs->ext.p_glPathParameteriNV( path, pname, value );
6976 }
6977
6978 static void WINAPI wine_glPathParameterivNV( GLuint path, GLenum pname, const GLint* value ) {
6979   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6980   TRACE("(%d, %d, %p)\n", path, pname, value );
6981   funcs->ext.p_glPathParameterivNV( path, pname, value );
6982 }
6983
6984 static void WINAPI wine_glPathStencilDepthOffsetNV( GLfloat factor, GLfloat units ) {
6985   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6986   TRACE("(%f, %f)\n", factor, units );
6987   funcs->ext.p_glPathStencilDepthOffsetNV( factor, units );
6988 }
6989
6990 static void WINAPI wine_glPathStencilFuncNV( GLenum func, GLint ref, GLuint mask ) {
6991   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6992   TRACE("(%d, %d, %d)\n", func, ref, mask );
6993   funcs->ext.p_glPathStencilFuncNV( func, ref, mask );
6994 }
6995
6996 static void WINAPI wine_glPathStringNV( GLuint path, GLenum format, GLsizei length, const GLvoid* pathString ) {
6997   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
6998   TRACE("(%d, %d, %d, %p)\n", path, format, length, pathString );
6999   funcs->ext.p_glPathStringNV( path, format, length, pathString );
7000 }
7001
7002 static void WINAPI wine_glPathSubCommandsNV( GLuint path, GLsizei commandStart, GLsizei commandsToDelete, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const GLvoid* coords ) {
7003   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7004   TRACE("(%d, %d, %d, %d, %p, %d, %d, %p)\n", path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords );
7005   funcs->ext.p_glPathSubCommandsNV( path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords );
7006 }
7007
7008 static void WINAPI wine_glPathSubCoordsNV( GLuint path, GLsizei coordStart, GLsizei numCoords, GLenum coordType, const GLvoid* coords ) {
7009   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7010   TRACE("(%d, %d, %d, %d, %p)\n", path, coordStart, numCoords, coordType, coords );
7011   funcs->ext.p_glPathSubCoordsNV( path, coordStart, numCoords, coordType, coords );
7012 }
7013
7014 static void WINAPI wine_glPathTexGenNV( GLenum texCoordSet, GLenum genMode, GLint components, const GLfloat* coeffs ) {
7015   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7016   TRACE("(%d, %d, %d, %p)\n", texCoordSet, genMode, components, coeffs );
7017   funcs->ext.p_glPathTexGenNV( texCoordSet, genMode, components, coeffs );
7018 }
7019
7020 static void WINAPI wine_glPauseTransformFeedback( void ) {
7021   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7022   TRACE("()\n");
7023   funcs->ext.p_glPauseTransformFeedback( );
7024 }
7025
7026 static void WINAPI wine_glPauseTransformFeedbackNV( void ) {
7027   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7028   TRACE("()\n");
7029   funcs->ext.p_glPauseTransformFeedbackNV( );
7030 }
7031
7032 static void WINAPI wine_glPixelDataRangeNV( GLenum target, GLsizei length, const GLvoid* pointer ) {
7033   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7034   TRACE("(%d, %d, %p)\n", target, length, pointer );
7035   funcs->ext.p_glPixelDataRangeNV( target, length, pointer );
7036 }
7037
7038 static void WINAPI wine_glPixelTexGenParameterfSGIS( GLenum pname, GLfloat param ) {
7039   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7040   TRACE("(%d, %f)\n", pname, param );
7041   funcs->ext.p_glPixelTexGenParameterfSGIS( pname, param );
7042 }
7043
7044 static void WINAPI wine_glPixelTexGenParameterfvSGIS( GLenum pname, const GLfloat* params ) {
7045   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7046   TRACE("(%d, %p)\n", pname, params );
7047   funcs->ext.p_glPixelTexGenParameterfvSGIS( pname, params );
7048 }
7049
7050 static void WINAPI wine_glPixelTexGenParameteriSGIS( GLenum pname, GLint param ) {
7051   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7052   TRACE("(%d, %d)\n", pname, param );
7053   funcs->ext.p_glPixelTexGenParameteriSGIS( pname, param );
7054 }
7055
7056 static void WINAPI wine_glPixelTexGenParameterivSGIS( GLenum pname, const GLint* params ) {
7057   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7058   TRACE("(%d, %p)\n", pname, params );
7059   funcs->ext.p_glPixelTexGenParameterivSGIS( pname, params );
7060 }
7061
7062 static void WINAPI wine_glPixelTexGenSGIX( GLenum mode ) {
7063   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7064   TRACE("(%d)\n", mode );
7065   funcs->ext.p_glPixelTexGenSGIX( mode );
7066 }
7067
7068 static void WINAPI wine_glPixelTransformParameterfEXT( GLenum target, GLenum pname, GLfloat param ) {
7069   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7070   TRACE("(%d, %d, %f)\n", target, pname, param );
7071   funcs->ext.p_glPixelTransformParameterfEXT( target, pname, param );
7072 }
7073
7074 static void WINAPI wine_glPixelTransformParameterfvEXT( GLenum target, GLenum pname, const GLfloat* params ) {
7075   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7076   TRACE("(%d, %d, %p)\n", target, pname, params );
7077   funcs->ext.p_glPixelTransformParameterfvEXT( target, pname, params );
7078 }
7079
7080 static void WINAPI wine_glPixelTransformParameteriEXT( GLenum target, GLenum pname, GLint param ) {
7081   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7082   TRACE("(%d, %d, %d)\n", target, pname, param );
7083   funcs->ext.p_glPixelTransformParameteriEXT( target, pname, param );
7084 }
7085
7086 static void WINAPI wine_glPixelTransformParameterivEXT( GLenum target, GLenum pname, const GLint* params ) {
7087   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7088   TRACE("(%d, %d, %p)\n", target, pname, params );
7089   funcs->ext.p_glPixelTransformParameterivEXT( target, pname, params );
7090 }
7091
7092 static GLboolean WINAPI wine_glPointAlongPathNV( GLuint path, GLsizei startSegment, GLsizei numSegments, GLfloat distance, GLfloat* x, GLfloat* y, GLfloat* tangentX, GLfloat* tangentY ) {
7093   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7094   TRACE("(%d, %d, %d, %f, %p, %p, %p, %p)\n", path, startSegment, numSegments, distance, x, y, tangentX, tangentY );
7095   return funcs->ext.p_glPointAlongPathNV( path, startSegment, numSegments, distance, x, y, tangentX, tangentY );
7096 }
7097
7098 static void WINAPI wine_glPointParameterf( GLenum pname, GLfloat param ) {
7099   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7100   TRACE("(%d, %f)\n", pname, param );
7101   funcs->ext.p_glPointParameterf( pname, param );
7102 }
7103
7104 static void WINAPI wine_glPointParameterfARB( GLenum pname, GLfloat param ) {
7105   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7106   TRACE("(%d, %f)\n", pname, param );
7107   funcs->ext.p_glPointParameterfARB( pname, param );
7108 }
7109
7110 static void WINAPI wine_glPointParameterfEXT( GLenum pname, GLfloat param ) {
7111   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7112   TRACE("(%d, %f)\n", pname, param );
7113   funcs->ext.p_glPointParameterfEXT( pname, param );
7114 }
7115
7116 static void WINAPI wine_glPointParameterfSGIS( GLenum pname, GLfloat param ) {
7117   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7118   TRACE("(%d, %f)\n", pname, param );
7119   funcs->ext.p_glPointParameterfSGIS( pname, param );
7120 }
7121
7122 static void WINAPI wine_glPointParameterfv( GLenum pname, const GLfloat* params ) {
7123   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7124   TRACE("(%d, %p)\n", pname, params );
7125   funcs->ext.p_glPointParameterfv( pname, params );
7126 }
7127
7128 static void WINAPI wine_glPointParameterfvARB( GLenum pname, const GLfloat* params ) {
7129   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7130   TRACE("(%d, %p)\n", pname, params );
7131   funcs->ext.p_glPointParameterfvARB( pname, params );
7132 }
7133
7134 static void WINAPI wine_glPointParameterfvEXT( GLenum pname, const GLfloat* params ) {
7135   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7136   TRACE("(%d, %p)\n", pname, params );
7137   funcs->ext.p_glPointParameterfvEXT( pname, params );
7138 }
7139
7140 static void WINAPI wine_glPointParameterfvSGIS( GLenum pname, const GLfloat* params ) {
7141   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7142   TRACE("(%d, %p)\n", pname, params );
7143   funcs->ext.p_glPointParameterfvSGIS( pname, params );
7144 }
7145
7146 static void WINAPI wine_glPointParameteri( GLenum pname, GLint param ) {
7147   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7148   TRACE("(%d, %d)\n", pname, param );
7149   funcs->ext.p_glPointParameteri( pname, param );
7150 }
7151
7152 static void WINAPI wine_glPointParameteriNV( GLenum pname, GLint param ) {
7153   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7154   TRACE("(%d, %d)\n", pname, param );
7155   funcs->ext.p_glPointParameteriNV( pname, param );
7156 }
7157
7158 static void WINAPI wine_glPointParameteriv( GLenum pname, const GLint* params ) {
7159   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7160   TRACE("(%d, %p)\n", pname, params );
7161   funcs->ext.p_glPointParameteriv( pname, params );
7162 }
7163
7164 static void WINAPI wine_glPointParameterivNV( GLenum pname, const GLint* params ) {
7165   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7166   TRACE("(%d, %p)\n", pname, params );
7167   funcs->ext.p_glPointParameterivNV( pname, params );
7168 }
7169
7170 static GLint WINAPI wine_glPollAsyncSGIX( GLuint* markerp ) {
7171   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7172   TRACE("(%p)\n", markerp );
7173   return funcs->ext.p_glPollAsyncSGIX( markerp );
7174 }
7175
7176 static GLint WINAPI wine_glPollInstrumentsSGIX( GLint* marker_p ) {
7177   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7178   TRACE("(%p)\n", marker_p );
7179   return funcs->ext.p_glPollInstrumentsSGIX( marker_p );
7180 }
7181
7182 static void WINAPI wine_glPolygonOffsetEXT( GLfloat factor, GLfloat bias ) {
7183   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7184   TRACE("(%f, %f)\n", factor, bias );
7185   funcs->ext.p_glPolygonOffsetEXT( factor, bias );
7186 }
7187
7188 static void WINAPI wine_glPopDebugGroup( void ) {
7189   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7190   TRACE("()\n");
7191   funcs->ext.p_glPopDebugGroup( );
7192 }
7193
7194 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 ) {
7195   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7196   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 );
7197   funcs->ext.p_glPresentFrameDualFillNV( video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, target1, fill1, target2, fill2, target3, fill3 );
7198 }
7199
7200 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 ) {
7201   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7202   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 );
7203   funcs->ext.p_glPresentFrameKeyedNV( video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, key0, target1, fill1, key1 );
7204 }
7205
7206 static void WINAPI wine_glPrimitiveRestartIndex( GLuint index ) {
7207   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7208   TRACE("(%d)\n", index );
7209   funcs->ext.p_glPrimitiveRestartIndex( index );
7210 }
7211
7212 static void WINAPI wine_glPrimitiveRestartIndexNV( GLuint index ) {
7213   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7214   TRACE("(%d)\n", index );
7215   funcs->ext.p_glPrimitiveRestartIndexNV( index );
7216 }
7217
7218 static void WINAPI wine_glPrimitiveRestartNV( void ) {
7219   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7220   TRACE("()\n");
7221   funcs->ext.p_glPrimitiveRestartNV( );
7222 }
7223
7224 static void WINAPI wine_glPrioritizeTexturesEXT( GLsizei n, const GLuint* textures, const GLclampf* priorities ) {
7225   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7226   TRACE("(%d, %p, %p)\n", n, textures, priorities );
7227   funcs->ext.p_glPrioritizeTexturesEXT( n, textures, priorities );
7228 }
7229
7230 static void WINAPI wine_glProgramBinary( GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length ) {
7231   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7232   TRACE("(%d, %d, %p, %d)\n", program, binaryFormat, binary, length );
7233   funcs->ext.p_glProgramBinary( program, binaryFormat, binary, length );
7234 }
7235
7236 static void WINAPI wine_glProgramBufferParametersIivNV( GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint* params ) {
7237   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7238   TRACE("(%d, %d, %d, %d, %p)\n", target, buffer, index, count, params );
7239   funcs->ext.p_glProgramBufferParametersIivNV( target, buffer, index, count, params );
7240 }
7241
7242 static void WINAPI wine_glProgramBufferParametersIuivNV( GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint* params ) {
7243   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7244   TRACE("(%d, %d, %d, %d, %p)\n", target, buffer, index, count, params );
7245   funcs->ext.p_glProgramBufferParametersIuivNV( target, buffer, index, count, params );
7246 }
7247
7248 static void WINAPI wine_glProgramBufferParametersfvNV( GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat* params ) {
7249   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7250   TRACE("(%d, %d, %d, %d, %p)\n", target, buffer, index, count, params );
7251   funcs->ext.p_glProgramBufferParametersfvNV( target, buffer, index, count, params );
7252 }
7253
7254 static void WINAPI wine_glProgramEnvParameter4dARB( GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
7255   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7256   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
7257   funcs->ext.p_glProgramEnvParameter4dARB( target, index, x, y, z, w );
7258 }
7259
7260 static void WINAPI wine_glProgramEnvParameter4dvARB( GLenum target, GLuint index, const GLdouble* params ) {
7261   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7262   TRACE("(%d, %d, %p)\n", target, index, params );
7263   funcs->ext.p_glProgramEnvParameter4dvARB( target, index, params );
7264 }
7265
7266 static void WINAPI wine_glProgramEnvParameter4fARB( GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
7267   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7268   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
7269   funcs->ext.p_glProgramEnvParameter4fARB( target, index, x, y, z, w );
7270 }
7271
7272 static void WINAPI wine_glProgramEnvParameter4fvARB( GLenum target, GLuint index, const GLfloat* params ) {
7273   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7274   TRACE("(%d, %d, %p)\n", target, index, params );
7275   funcs->ext.p_glProgramEnvParameter4fvARB( target, index, params );
7276 }
7277
7278 static void WINAPI wine_glProgramEnvParameterI4iNV( GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w ) {
7279   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7280   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, index, x, y, z, w );
7281   funcs->ext.p_glProgramEnvParameterI4iNV( target, index, x, y, z, w );
7282 }
7283
7284 static void WINAPI wine_glProgramEnvParameterI4ivNV( GLenum target, GLuint index, const GLint* params ) {
7285   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7286   TRACE("(%d, %d, %p)\n", target, index, params );
7287   funcs->ext.p_glProgramEnvParameterI4ivNV( target, index, params );
7288 }
7289
7290 static void WINAPI wine_glProgramEnvParameterI4uiNV( GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
7291   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7292   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, index, x, y, z, w );
7293   funcs->ext.p_glProgramEnvParameterI4uiNV( target, index, x, y, z, w );
7294 }
7295
7296 static void WINAPI wine_glProgramEnvParameterI4uivNV( GLenum target, GLuint index, const GLuint* params ) {
7297   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7298   TRACE("(%d, %d, %p)\n", target, index, params );
7299   funcs->ext.p_glProgramEnvParameterI4uivNV( target, index, params );
7300 }
7301
7302 static void WINAPI wine_glProgramEnvParameters4fvEXT( GLenum target, GLuint index, GLsizei count, const GLfloat* params ) {
7303   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7304   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
7305   funcs->ext.p_glProgramEnvParameters4fvEXT( target, index, count, params );
7306 }
7307
7308 static void WINAPI wine_glProgramEnvParametersI4ivNV( GLenum target, GLuint index, GLsizei count, const GLint* params ) {
7309   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7310   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
7311   funcs->ext.p_glProgramEnvParametersI4ivNV( target, index, count, params );
7312 }
7313
7314 static void WINAPI wine_glProgramEnvParametersI4uivNV( GLenum target, GLuint index, GLsizei count, const GLuint* params ) {
7315   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7316   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
7317   funcs->ext.p_glProgramEnvParametersI4uivNV( target, index, count, params );
7318 }
7319
7320 static void WINAPI wine_glProgramLocalParameter4dARB( GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
7321   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7322   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
7323   funcs->ext.p_glProgramLocalParameter4dARB( target, index, x, y, z, w );
7324 }
7325
7326 static void WINAPI wine_glProgramLocalParameter4dvARB( GLenum target, GLuint index, const GLdouble* params ) {
7327   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7328   TRACE("(%d, %d, %p)\n", target, index, params );
7329   funcs->ext.p_glProgramLocalParameter4dvARB( target, index, params );
7330 }
7331
7332 static void WINAPI wine_glProgramLocalParameter4fARB( GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
7333   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7334   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
7335   funcs->ext.p_glProgramLocalParameter4fARB( target, index, x, y, z, w );
7336 }
7337
7338 static void WINAPI wine_glProgramLocalParameter4fvARB( GLenum target, GLuint index, const GLfloat* params ) {
7339   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7340   TRACE("(%d, %d, %p)\n", target, index, params );
7341   funcs->ext.p_glProgramLocalParameter4fvARB( target, index, params );
7342 }
7343
7344 static void WINAPI wine_glProgramLocalParameterI4iNV( GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w ) {
7345   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7346   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, index, x, y, z, w );
7347   funcs->ext.p_glProgramLocalParameterI4iNV( target, index, x, y, z, w );
7348 }
7349
7350 static void WINAPI wine_glProgramLocalParameterI4ivNV( GLenum target, GLuint index, const GLint* params ) {
7351   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7352   TRACE("(%d, %d, %p)\n", target, index, params );
7353   funcs->ext.p_glProgramLocalParameterI4ivNV( target, index, params );
7354 }
7355
7356 static void WINAPI wine_glProgramLocalParameterI4uiNV( GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
7357   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7358   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, index, x, y, z, w );
7359   funcs->ext.p_glProgramLocalParameterI4uiNV( target, index, x, y, z, w );
7360 }
7361
7362 static void WINAPI wine_glProgramLocalParameterI4uivNV( GLenum target, GLuint index, const GLuint* params ) {
7363   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7364   TRACE("(%d, %d, %p)\n", target, index, params );
7365   funcs->ext.p_glProgramLocalParameterI4uivNV( target, index, params );
7366 }
7367
7368 static void WINAPI wine_glProgramLocalParameters4fvEXT( GLenum target, GLuint index, GLsizei count, const GLfloat* params ) {
7369   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7370   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
7371   funcs->ext.p_glProgramLocalParameters4fvEXT( target, index, count, params );
7372 }
7373
7374 static void WINAPI wine_glProgramLocalParametersI4ivNV( GLenum target, GLuint index, GLsizei count, const GLint* params ) {
7375   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7376   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
7377   funcs->ext.p_glProgramLocalParametersI4ivNV( target, index, count, params );
7378 }
7379
7380 static void WINAPI wine_glProgramLocalParametersI4uivNV( GLenum target, GLuint index, GLsizei count, const GLuint* params ) {
7381   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7382   TRACE("(%d, %d, %d, %p)\n", target, index, count, params );
7383   funcs->ext.p_glProgramLocalParametersI4uivNV( target, index, count, params );
7384 }
7385
7386 static void WINAPI wine_glProgramNamedParameter4dNV( GLuint id, GLsizei len, const GLubyte* name, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
7387   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7388   TRACE("(%d, %d, %p, %f, %f, %f, %f)\n", id, len, name, x, y, z, w );
7389   funcs->ext.p_glProgramNamedParameter4dNV( id, len, name, x, y, z, w );
7390 }
7391
7392 static void WINAPI wine_glProgramNamedParameter4dvNV( GLuint id, GLsizei len, const GLubyte* name, const GLdouble* v ) {
7393   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7394   TRACE("(%d, %d, %p, %p)\n", id, len, name, v );
7395   funcs->ext.p_glProgramNamedParameter4dvNV( id, len, name, v );
7396 }
7397
7398 static void WINAPI wine_glProgramNamedParameter4fNV( GLuint id, GLsizei len, const GLubyte* name, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
7399   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7400   TRACE("(%d, %d, %p, %f, %f, %f, %f)\n", id, len, name, x, y, z, w );
7401   funcs->ext.p_glProgramNamedParameter4fNV( id, len, name, x, y, z, w );
7402 }
7403
7404 static void WINAPI wine_glProgramNamedParameter4fvNV( GLuint id, GLsizei len, const GLubyte* name, const GLfloat* v ) {
7405   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7406   TRACE("(%d, %d, %p, %p)\n", id, len, name, v );
7407   funcs->ext.p_glProgramNamedParameter4fvNV( id, len, name, v );
7408 }
7409
7410 static void WINAPI wine_glProgramParameter4dNV( GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
7411   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7412   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
7413   funcs->ext.p_glProgramParameter4dNV( target, index, x, y, z, w );
7414 }
7415
7416 static void WINAPI wine_glProgramParameter4dvNV( GLenum target, GLuint index, const GLdouble* v ) {
7417   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7418   TRACE("(%d, %d, %p)\n", target, index, v );
7419   funcs->ext.p_glProgramParameter4dvNV( target, index, v );
7420 }
7421
7422 static void WINAPI wine_glProgramParameter4fNV( GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
7423   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7424   TRACE("(%d, %d, %f, %f, %f, %f)\n", target, index, x, y, z, w );
7425   funcs->ext.p_glProgramParameter4fNV( target, index, x, y, z, w );
7426 }
7427
7428 static void WINAPI wine_glProgramParameter4fvNV( GLenum target, GLuint index, const GLfloat* v ) {
7429   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7430   TRACE("(%d, %d, %p)\n", target, index, v );
7431   funcs->ext.p_glProgramParameter4fvNV( target, index, v );
7432 }
7433
7434 static void WINAPI wine_glProgramParameteri( GLuint program, GLenum pname, GLint value ) {
7435   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7436   TRACE("(%d, %d, %d)\n", program, pname, value );
7437   funcs->ext.p_glProgramParameteri( program, pname, value );
7438 }
7439
7440 static void WINAPI wine_glProgramParameteriARB( GLuint program, GLenum pname, GLint value ) {
7441   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7442   TRACE("(%d, %d, %d)\n", program, pname, value );
7443   funcs->ext.p_glProgramParameteriARB( program, pname, value );
7444 }
7445
7446 static void WINAPI wine_glProgramParameteriEXT( GLuint program, GLenum pname, GLint value ) {
7447   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7448   TRACE("(%d, %d, %d)\n", program, pname, value );
7449   funcs->ext.p_glProgramParameteriEXT( program, pname, value );
7450 }
7451
7452 static void WINAPI wine_glProgramParameters4dvNV( GLenum target, GLuint index, GLsizei count, const GLdouble* v ) {
7453   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7454   TRACE("(%d, %d, %d, %p)\n", target, index, count, v );
7455   funcs->ext.p_glProgramParameters4dvNV( target, index, count, v );
7456 }
7457
7458 static void WINAPI wine_glProgramParameters4fvNV( GLenum target, GLuint index, GLsizei count, const GLfloat* v ) {
7459   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7460   TRACE("(%d, %d, %d, %p)\n", target, index, count, v );
7461   funcs->ext.p_glProgramParameters4fvNV( target, index, count, v );
7462 }
7463
7464 static void WINAPI wine_glProgramStringARB( GLenum target, GLenum format, GLsizei len, const GLvoid* string ) {
7465   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7466   TRACE("(%d, %d, %d, %p)\n", target, format, len, string );
7467   funcs->ext.p_glProgramStringARB( target, format, len, string );
7468 }
7469
7470 static void WINAPI wine_glProgramSubroutineParametersuivNV( GLenum target, GLsizei count, const GLuint* params ) {
7471   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7472   TRACE("(%d, %d, %p)\n", target, count, params );
7473   funcs->ext.p_glProgramSubroutineParametersuivNV( target, count, params );
7474 }
7475
7476 static void WINAPI wine_glProgramUniform1d( GLuint program, GLint location, GLdouble v0 ) {
7477   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7478   TRACE("(%d, %d, %f)\n", program, location, v0 );
7479   funcs->ext.p_glProgramUniform1d( program, location, v0 );
7480 }
7481
7482 static void WINAPI wine_glProgramUniform1dEXT( GLuint program, GLint location, GLdouble x ) {
7483   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7484   TRACE("(%d, %d, %f)\n", program, location, x );
7485   funcs->ext.p_glProgramUniform1dEXT( program, location, x );
7486 }
7487
7488 static void WINAPI wine_glProgramUniform1dv( GLuint program, GLint location, GLsizei count, const GLdouble* value ) {
7489   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7490   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7491   funcs->ext.p_glProgramUniform1dv( program, location, count, value );
7492 }
7493
7494 static void WINAPI wine_glProgramUniform1dvEXT( GLuint program, GLint location, GLsizei count, const GLdouble* value ) {
7495   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7496   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7497   funcs->ext.p_glProgramUniform1dvEXT( program, location, count, value );
7498 }
7499
7500 static void WINAPI wine_glProgramUniform1f( GLuint program, GLint location, GLfloat v0 ) {
7501   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7502   TRACE("(%d, %d, %f)\n", program, location, v0 );
7503   funcs->ext.p_glProgramUniform1f( program, location, v0 );
7504 }
7505
7506 static void WINAPI wine_glProgramUniform1fEXT( GLuint program, GLint location, GLfloat v0 ) {
7507   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7508   TRACE("(%d, %d, %f)\n", program, location, v0 );
7509   funcs->ext.p_glProgramUniform1fEXT( program, location, v0 );
7510 }
7511
7512 static void WINAPI wine_glProgramUniform1fv( GLuint program, GLint location, GLsizei count, const GLfloat* value ) {
7513   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7514   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7515   funcs->ext.p_glProgramUniform1fv( program, location, count, value );
7516 }
7517
7518 static void WINAPI wine_glProgramUniform1fvEXT( GLuint program, GLint location, GLsizei count, const GLfloat* value ) {
7519   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7520   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7521   funcs->ext.p_glProgramUniform1fvEXT( program, location, count, value );
7522 }
7523
7524 static void WINAPI wine_glProgramUniform1i( GLuint program, GLint location, GLint v0 ) {
7525   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7526   TRACE("(%d, %d, %d)\n", program, location, v0 );
7527   funcs->ext.p_glProgramUniform1i( program, location, v0 );
7528 }
7529
7530 static void WINAPI wine_glProgramUniform1i64NV( GLuint program, GLint location, INT64 x ) {
7531   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7532   TRACE("(%d, %d, %s)\n", program, location, wine_dbgstr_longlong(x) );
7533   funcs->ext.p_glProgramUniform1i64NV( program, location, x );
7534 }
7535
7536 static void WINAPI wine_glProgramUniform1i64vNV( GLuint program, GLint location, GLsizei count, const INT64* value ) {
7537   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7538   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7539   funcs->ext.p_glProgramUniform1i64vNV( program, location, count, value );
7540 }
7541
7542 static void WINAPI wine_glProgramUniform1iEXT( GLuint program, GLint location, GLint v0 ) {
7543   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7544   TRACE("(%d, %d, %d)\n", program, location, v0 );
7545   funcs->ext.p_glProgramUniform1iEXT( program, location, v0 );
7546 }
7547
7548 static void WINAPI wine_glProgramUniform1iv( GLuint program, GLint location, GLsizei count, const GLint* value ) {
7549   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7550   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7551   funcs->ext.p_glProgramUniform1iv( program, location, count, value );
7552 }
7553
7554 static void WINAPI wine_glProgramUniform1ivEXT( GLuint program, GLint location, GLsizei count, const GLint* value ) {
7555   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7556   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7557   funcs->ext.p_glProgramUniform1ivEXT( program, location, count, value );
7558 }
7559
7560 static void WINAPI wine_glProgramUniform1ui( GLuint program, GLint location, GLuint v0 ) {
7561   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7562   TRACE("(%d, %d, %d)\n", program, location, v0 );
7563   funcs->ext.p_glProgramUniform1ui( program, location, v0 );
7564 }
7565
7566 static void WINAPI wine_glProgramUniform1ui64NV( GLuint program, GLint location, UINT64 x ) {
7567   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7568   TRACE("(%d, %d, %s)\n", program, location, wine_dbgstr_longlong(x) );
7569   funcs->ext.p_glProgramUniform1ui64NV( program, location, x );
7570 }
7571
7572 static void WINAPI wine_glProgramUniform1ui64vNV( GLuint program, GLint location, GLsizei count, const UINT64* value ) {
7573   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7574   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7575   funcs->ext.p_glProgramUniform1ui64vNV( program, location, count, value );
7576 }
7577
7578 static void WINAPI wine_glProgramUniform1uiEXT( GLuint program, GLint location, GLuint v0 ) {
7579   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7580   TRACE("(%d, %d, %d)\n", program, location, v0 );
7581   funcs->ext.p_glProgramUniform1uiEXT( program, location, v0 );
7582 }
7583
7584 static void WINAPI wine_glProgramUniform1uiv( GLuint program, GLint location, GLsizei count, const GLuint* value ) {
7585   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7586   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7587   funcs->ext.p_glProgramUniform1uiv( program, location, count, value );
7588 }
7589
7590 static void WINAPI wine_glProgramUniform1uivEXT( GLuint program, GLint location, GLsizei count, const GLuint* value ) {
7591   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7592   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7593   funcs->ext.p_glProgramUniform1uivEXT( program, location, count, value );
7594 }
7595
7596 static void WINAPI wine_glProgramUniform2d( GLuint program, GLint location, GLdouble v0, GLdouble v1 ) {
7597   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7598   TRACE("(%d, %d, %f, %f)\n", program, location, v0, v1 );
7599   funcs->ext.p_glProgramUniform2d( program, location, v0, v1 );
7600 }
7601
7602 static void WINAPI wine_glProgramUniform2dEXT( GLuint program, GLint location, GLdouble x, GLdouble y ) {
7603   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7604   TRACE("(%d, %d, %f, %f)\n", program, location, x, y );
7605   funcs->ext.p_glProgramUniform2dEXT( program, location, x, y );
7606 }
7607
7608 static void WINAPI wine_glProgramUniform2dv( GLuint program, GLint location, GLsizei count, const GLdouble* value ) {
7609   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7610   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7611   funcs->ext.p_glProgramUniform2dv( program, location, count, value );
7612 }
7613
7614 static void WINAPI wine_glProgramUniform2dvEXT( GLuint program, GLint location, GLsizei count, const GLdouble* value ) {
7615   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7616   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7617   funcs->ext.p_glProgramUniform2dvEXT( program, location, count, value );
7618 }
7619
7620 static void WINAPI wine_glProgramUniform2f( GLuint program, GLint location, GLfloat v0, GLfloat v1 ) {
7621   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7622   TRACE("(%d, %d, %f, %f)\n", program, location, v0, v1 );
7623   funcs->ext.p_glProgramUniform2f( program, location, v0, v1 );
7624 }
7625
7626 static void WINAPI wine_glProgramUniform2fEXT( GLuint program, GLint location, GLfloat v0, GLfloat v1 ) {
7627   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7628   TRACE("(%d, %d, %f, %f)\n", program, location, v0, v1 );
7629   funcs->ext.p_glProgramUniform2fEXT( program, location, v0, v1 );
7630 }
7631
7632 static void WINAPI wine_glProgramUniform2fv( GLuint program, GLint location, GLsizei count, const GLfloat* value ) {
7633   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7634   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7635   funcs->ext.p_glProgramUniform2fv( program, location, count, value );
7636 }
7637
7638 static void WINAPI wine_glProgramUniform2fvEXT( GLuint program, GLint location, GLsizei count, const GLfloat* value ) {
7639   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7640   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7641   funcs->ext.p_glProgramUniform2fvEXT( program, location, count, value );
7642 }
7643
7644 static void WINAPI wine_glProgramUniform2i( GLuint program, GLint location, GLint v0, GLint v1 ) {
7645   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7646   TRACE("(%d, %d, %d, %d)\n", program, location, v0, v1 );
7647   funcs->ext.p_glProgramUniform2i( program, location, v0, v1 );
7648 }
7649
7650 static void WINAPI wine_glProgramUniform2i64NV( GLuint program, GLint location, INT64 x, INT64 y ) {
7651   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7652   TRACE("(%d, %d, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
7653   funcs->ext.p_glProgramUniform2i64NV( program, location, x, y );
7654 }
7655
7656 static void WINAPI wine_glProgramUniform2i64vNV( GLuint program, GLint location, GLsizei count, const INT64* value ) {
7657   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7658   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7659   funcs->ext.p_glProgramUniform2i64vNV( program, location, count, value );
7660 }
7661
7662 static void WINAPI wine_glProgramUniform2iEXT( GLuint program, GLint location, GLint v0, GLint v1 ) {
7663   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7664   TRACE("(%d, %d, %d, %d)\n", program, location, v0, v1 );
7665   funcs->ext.p_glProgramUniform2iEXT( program, location, v0, v1 );
7666 }
7667
7668 static void WINAPI wine_glProgramUniform2iv( GLuint program, GLint location, GLsizei count, const GLint* value ) {
7669   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7670   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7671   funcs->ext.p_glProgramUniform2iv( program, location, count, value );
7672 }
7673
7674 static void WINAPI wine_glProgramUniform2ivEXT( GLuint program, GLint location, GLsizei count, const GLint* value ) {
7675   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7676   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7677   funcs->ext.p_glProgramUniform2ivEXT( program, location, count, value );
7678 }
7679
7680 static void WINAPI wine_glProgramUniform2ui( GLuint program, GLint location, GLuint v0, GLuint v1 ) {
7681   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7682   TRACE("(%d, %d, %d, %d)\n", program, location, v0, v1 );
7683   funcs->ext.p_glProgramUniform2ui( program, location, v0, v1 );
7684 }
7685
7686 static void WINAPI wine_glProgramUniform2ui64NV( GLuint program, GLint location, UINT64 x, UINT64 y ) {
7687   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7688   TRACE("(%d, %d, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
7689   funcs->ext.p_glProgramUniform2ui64NV( program, location, x, y );
7690 }
7691
7692 static void WINAPI wine_glProgramUniform2ui64vNV( GLuint program, GLint location, GLsizei count, const UINT64* value ) {
7693   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7694   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7695   funcs->ext.p_glProgramUniform2ui64vNV( program, location, count, value );
7696 }
7697
7698 static void WINAPI wine_glProgramUniform2uiEXT( GLuint program, GLint location, GLuint v0, GLuint v1 ) {
7699   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7700   TRACE("(%d, %d, %d, %d)\n", program, location, v0, v1 );
7701   funcs->ext.p_glProgramUniform2uiEXT( program, location, v0, v1 );
7702 }
7703
7704 static void WINAPI wine_glProgramUniform2uiv( GLuint program, GLint location, GLsizei count, const GLuint* value ) {
7705   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7706   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7707   funcs->ext.p_glProgramUniform2uiv( program, location, count, value );
7708 }
7709
7710 static void WINAPI wine_glProgramUniform2uivEXT( GLuint program, GLint location, GLsizei count, const GLuint* value ) {
7711   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7712   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7713   funcs->ext.p_glProgramUniform2uivEXT( program, location, count, value );
7714 }
7715
7716 static void WINAPI wine_glProgramUniform3d( GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2 ) {
7717   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7718   TRACE("(%d, %d, %f, %f, %f)\n", program, location, v0, v1, v2 );
7719   funcs->ext.p_glProgramUniform3d( program, location, v0, v1, v2 );
7720 }
7721
7722 static void WINAPI wine_glProgramUniform3dEXT( GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z ) {
7723   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7724   TRACE("(%d, %d, %f, %f, %f)\n", program, location, x, y, z );
7725   funcs->ext.p_glProgramUniform3dEXT( program, location, x, y, z );
7726 }
7727
7728 static void WINAPI wine_glProgramUniform3dv( GLuint program, GLint location, GLsizei count, const GLdouble* value ) {
7729   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7730   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7731   funcs->ext.p_glProgramUniform3dv( program, location, count, value );
7732 }
7733
7734 static void WINAPI wine_glProgramUniform3dvEXT( GLuint program, GLint location, GLsizei count, const GLdouble* value ) {
7735   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7736   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7737   funcs->ext.p_glProgramUniform3dvEXT( program, location, count, value );
7738 }
7739
7740 static void WINAPI wine_glProgramUniform3f( GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2 ) {
7741   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7742   TRACE("(%d, %d, %f, %f, %f)\n", program, location, v0, v1, v2 );
7743   funcs->ext.p_glProgramUniform3f( program, location, v0, v1, v2 );
7744 }
7745
7746 static void WINAPI wine_glProgramUniform3fEXT( GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2 ) {
7747   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7748   TRACE("(%d, %d, %f, %f, %f)\n", program, location, v0, v1, v2 );
7749   funcs->ext.p_glProgramUniform3fEXT( program, location, v0, v1, v2 );
7750 }
7751
7752 static void WINAPI wine_glProgramUniform3fv( GLuint program, GLint location, GLsizei count, const GLfloat* value ) {
7753   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7754   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7755   funcs->ext.p_glProgramUniform3fv( program, location, count, value );
7756 }
7757
7758 static void WINAPI wine_glProgramUniform3fvEXT( GLuint program, GLint location, GLsizei count, const GLfloat* value ) {
7759   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7760   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7761   funcs->ext.p_glProgramUniform3fvEXT( program, location, count, value );
7762 }
7763
7764 static void WINAPI wine_glProgramUniform3i( GLuint program, GLint location, GLint v0, GLint v1, GLint v2 ) {
7765   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7766   TRACE("(%d, %d, %d, %d, %d)\n", program, location, v0, v1, v2 );
7767   funcs->ext.p_glProgramUniform3i( program, location, v0, v1, v2 );
7768 }
7769
7770 static void WINAPI wine_glProgramUniform3i64NV( GLuint program, GLint location, INT64 x, INT64 y, INT64 z ) {
7771   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7772   TRACE("(%d, %d, %s, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
7773   funcs->ext.p_glProgramUniform3i64NV( program, location, x, y, z );
7774 }
7775
7776 static void WINAPI wine_glProgramUniform3i64vNV( GLuint program, GLint location, GLsizei count, const INT64* value ) {
7777   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7778   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7779   funcs->ext.p_glProgramUniform3i64vNV( program, location, count, value );
7780 }
7781
7782 static void WINAPI wine_glProgramUniform3iEXT( GLuint program, GLint location, GLint v0, GLint v1, GLint v2 ) {
7783   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7784   TRACE("(%d, %d, %d, %d, %d)\n", program, location, v0, v1, v2 );
7785   funcs->ext.p_glProgramUniform3iEXT( program, location, v0, v1, v2 );
7786 }
7787
7788 static void WINAPI wine_glProgramUniform3iv( GLuint program, GLint location, GLsizei count, const GLint* value ) {
7789   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7790   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7791   funcs->ext.p_glProgramUniform3iv( program, location, count, value );
7792 }
7793
7794 static void WINAPI wine_glProgramUniform3ivEXT( GLuint program, GLint location, GLsizei count, const GLint* value ) {
7795   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7796   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7797   funcs->ext.p_glProgramUniform3ivEXT( program, location, count, value );
7798 }
7799
7800 static void WINAPI wine_glProgramUniform3ui( GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2 ) {
7801   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7802   TRACE("(%d, %d, %d, %d, %d)\n", program, location, v0, v1, v2 );
7803   funcs->ext.p_glProgramUniform3ui( program, location, v0, v1, v2 );
7804 }
7805
7806 static void WINAPI wine_glProgramUniform3ui64NV( GLuint program, GLint location, UINT64 x, UINT64 y, UINT64 z ) {
7807   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7808   TRACE("(%d, %d, %s, %s, %s)\n", program, location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
7809   funcs->ext.p_glProgramUniform3ui64NV( program, location, x, y, z );
7810 }
7811
7812 static void WINAPI wine_glProgramUniform3ui64vNV( GLuint program, GLint location, GLsizei count, const UINT64* value ) {
7813   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7814   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7815   funcs->ext.p_glProgramUniform3ui64vNV( program, location, count, value );
7816 }
7817
7818 static void WINAPI wine_glProgramUniform3uiEXT( GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2 ) {
7819   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7820   TRACE("(%d, %d, %d, %d, %d)\n", program, location, v0, v1, v2 );
7821   funcs->ext.p_glProgramUniform3uiEXT( program, location, v0, v1, v2 );
7822 }
7823
7824 static void WINAPI wine_glProgramUniform3uiv( GLuint program, GLint location, GLsizei count, const GLuint* value ) {
7825   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7826   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7827   funcs->ext.p_glProgramUniform3uiv( program, location, count, value );
7828 }
7829
7830 static void WINAPI wine_glProgramUniform3uivEXT( GLuint program, GLint location, GLsizei count, const GLuint* value ) {
7831   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7832   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7833   funcs->ext.p_glProgramUniform3uivEXT( program, location, count, value );
7834 }
7835
7836 static void WINAPI wine_glProgramUniform4d( GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3 ) {
7837   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7838   TRACE("(%d, %d, %f, %f, %f, %f)\n", program, location, v0, v1, v2, v3 );
7839   funcs->ext.p_glProgramUniform4d( program, location, v0, v1, v2, v3 );
7840 }
7841
7842 static void WINAPI wine_glProgramUniform4dEXT( GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
7843   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7844   TRACE("(%d, %d, %f, %f, %f, %f)\n", program, location, x, y, z, w );
7845   funcs->ext.p_glProgramUniform4dEXT( program, location, x, y, z, w );
7846 }
7847
7848 static void WINAPI wine_glProgramUniform4dv( GLuint program, GLint location, GLsizei count, const GLdouble* value ) {
7849   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7850   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7851   funcs->ext.p_glProgramUniform4dv( program, location, count, value );
7852 }
7853
7854 static void WINAPI wine_glProgramUniform4dvEXT( GLuint program, GLint location, GLsizei count, const GLdouble* value ) {
7855   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7856   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7857   funcs->ext.p_glProgramUniform4dvEXT( program, location, count, value );
7858 }
7859
7860 static void WINAPI wine_glProgramUniform4f( GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3 ) {
7861   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7862   TRACE("(%d, %d, %f, %f, %f, %f)\n", program, location, v0, v1, v2, v3 );
7863   funcs->ext.p_glProgramUniform4f( program, location, v0, v1, v2, v3 );
7864 }
7865
7866 static void WINAPI wine_glProgramUniform4fEXT( GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3 ) {
7867   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7868   TRACE("(%d, %d, %f, %f, %f, %f)\n", program, location, v0, v1, v2, v3 );
7869   funcs->ext.p_glProgramUniform4fEXT( program, location, v0, v1, v2, v3 );
7870 }
7871
7872 static void WINAPI wine_glProgramUniform4fv( GLuint program, GLint location, GLsizei count, const GLfloat* value ) {
7873   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7874   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7875   funcs->ext.p_glProgramUniform4fv( program, location, count, value );
7876 }
7877
7878 static void WINAPI wine_glProgramUniform4fvEXT( GLuint program, GLint location, GLsizei count, const GLfloat* value ) {
7879   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7880   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7881   funcs->ext.p_glProgramUniform4fvEXT( program, location, count, value );
7882 }
7883
7884 static void WINAPI wine_glProgramUniform4i( GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3 ) {
7885   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7886   TRACE("(%d, %d, %d, %d, %d, %d)\n", program, location, v0, v1, v2, v3 );
7887   funcs->ext.p_glProgramUniform4i( program, location, v0, v1, v2, v3 );
7888 }
7889
7890 static void WINAPI wine_glProgramUniform4i64NV( GLuint program, GLint location, INT64 x, INT64 y, INT64 z, INT64 w ) {
7891   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7892   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) );
7893   funcs->ext.p_glProgramUniform4i64NV( program, location, x, y, z, w );
7894 }
7895
7896 static void WINAPI wine_glProgramUniform4i64vNV( GLuint program, GLint location, GLsizei count, const INT64* value ) {
7897   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7898   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7899   funcs->ext.p_glProgramUniform4i64vNV( program, location, count, value );
7900 }
7901
7902 static void WINAPI wine_glProgramUniform4iEXT( GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3 ) {
7903   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7904   TRACE("(%d, %d, %d, %d, %d, %d)\n", program, location, v0, v1, v2, v3 );
7905   funcs->ext.p_glProgramUniform4iEXT( program, location, v0, v1, v2, v3 );
7906 }
7907
7908 static void WINAPI wine_glProgramUniform4iv( GLuint program, GLint location, GLsizei count, const GLint* value ) {
7909   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7910   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7911   funcs->ext.p_glProgramUniform4iv( program, location, count, value );
7912 }
7913
7914 static void WINAPI wine_glProgramUniform4ivEXT( GLuint program, GLint location, GLsizei count, const GLint* value ) {
7915   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7916   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7917   funcs->ext.p_glProgramUniform4ivEXT( program, location, count, value );
7918 }
7919
7920 static void WINAPI wine_glProgramUniform4ui( GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) {
7921   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7922   TRACE("(%d, %d, %d, %d, %d, %d)\n", program, location, v0, v1, v2, v3 );
7923   funcs->ext.p_glProgramUniform4ui( program, location, v0, v1, v2, v3 );
7924 }
7925
7926 static void WINAPI wine_glProgramUniform4ui64NV( GLuint program, GLint location, UINT64 x, UINT64 y, UINT64 z, UINT64 w ) {
7927   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7928   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) );
7929   funcs->ext.p_glProgramUniform4ui64NV( program, location, x, y, z, w );
7930 }
7931
7932 static void WINAPI wine_glProgramUniform4ui64vNV( GLuint program, GLint location, GLsizei count, const UINT64* value ) {
7933   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7934   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7935   funcs->ext.p_glProgramUniform4ui64vNV( program, location, count, value );
7936 }
7937
7938 static void WINAPI wine_glProgramUniform4uiEXT( GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) {
7939   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7940   TRACE("(%d, %d, %d, %d, %d, %d)\n", program, location, v0, v1, v2, v3 );
7941   funcs->ext.p_glProgramUniform4uiEXT( program, location, v0, v1, v2, v3 );
7942 }
7943
7944 static void WINAPI wine_glProgramUniform4uiv( GLuint program, GLint location, GLsizei count, const GLuint* value ) {
7945   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7946   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7947   funcs->ext.p_glProgramUniform4uiv( program, location, count, value );
7948 }
7949
7950 static void WINAPI wine_glProgramUniform4uivEXT( GLuint program, GLint location, GLsizei count, const GLuint* value ) {
7951   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7952   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
7953   funcs->ext.p_glProgramUniform4uivEXT( program, location, count, value );
7954 }
7955
7956 static void WINAPI wine_glProgramUniformHandleui64NV( GLuint program, GLint location, UINT64 value ) {
7957   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7958   TRACE("(%d, %d, %s)\n", program, location, wine_dbgstr_longlong(value) );
7959   funcs->ext.p_glProgramUniformHandleui64NV( program, location, value );
7960 }
7961
7962 static void WINAPI wine_glProgramUniformHandleui64vNV( GLuint program, GLint location, GLsizei count, const UINT64* values ) {
7963   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7964   TRACE("(%d, %d, %d, %p)\n", program, location, count, values );
7965   funcs->ext.p_glProgramUniformHandleui64vNV( program, location, count, values );
7966 }
7967
7968 static void WINAPI wine_glProgramUniformMatrix2dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
7969   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7970   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
7971   funcs->ext.p_glProgramUniformMatrix2dv( program, location, count, transpose, value );
7972 }
7973
7974 static void WINAPI wine_glProgramUniformMatrix2dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
7975   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7976   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
7977   funcs->ext.p_glProgramUniformMatrix2dvEXT( program, location, count, transpose, value );
7978 }
7979
7980 static void WINAPI wine_glProgramUniformMatrix2fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
7981   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7982   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
7983   funcs->ext.p_glProgramUniformMatrix2fv( program, location, count, transpose, value );
7984 }
7985
7986 static void WINAPI wine_glProgramUniformMatrix2fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
7987   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7988   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
7989   funcs->ext.p_glProgramUniformMatrix2fvEXT( program, location, count, transpose, value );
7990 }
7991
7992 static void WINAPI wine_glProgramUniformMatrix2x3dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
7993   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
7994   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
7995   funcs->ext.p_glProgramUniformMatrix2x3dv( program, location, count, transpose, value );
7996 }
7997
7998 static void WINAPI wine_glProgramUniformMatrix2x3dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
7999   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8000   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8001   funcs->ext.p_glProgramUniformMatrix2x3dvEXT( program, location, count, transpose, value );
8002 }
8003
8004 static void WINAPI wine_glProgramUniformMatrix2x3fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8005   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8006   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8007   funcs->ext.p_glProgramUniformMatrix2x3fv( program, location, count, transpose, value );
8008 }
8009
8010 static void WINAPI wine_glProgramUniformMatrix2x3fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8011   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8012   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8013   funcs->ext.p_glProgramUniformMatrix2x3fvEXT( program, location, count, transpose, value );
8014 }
8015
8016 static void WINAPI wine_glProgramUniformMatrix2x4dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8017   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8018   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8019   funcs->ext.p_glProgramUniformMatrix2x4dv( program, location, count, transpose, value );
8020 }
8021
8022 static void WINAPI wine_glProgramUniformMatrix2x4dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8023   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8024   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8025   funcs->ext.p_glProgramUniformMatrix2x4dvEXT( program, location, count, transpose, value );
8026 }
8027
8028 static void WINAPI wine_glProgramUniformMatrix2x4fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8029   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8030   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8031   funcs->ext.p_glProgramUniformMatrix2x4fv( program, location, count, transpose, value );
8032 }
8033
8034 static void WINAPI wine_glProgramUniformMatrix2x4fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8035   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8036   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8037   funcs->ext.p_glProgramUniformMatrix2x4fvEXT( program, location, count, transpose, value );
8038 }
8039
8040 static void WINAPI wine_glProgramUniformMatrix3dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8041   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8042   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8043   funcs->ext.p_glProgramUniformMatrix3dv( program, location, count, transpose, value );
8044 }
8045
8046 static void WINAPI wine_glProgramUniformMatrix3dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8047   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8048   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8049   funcs->ext.p_glProgramUniformMatrix3dvEXT( program, location, count, transpose, value );
8050 }
8051
8052 static void WINAPI wine_glProgramUniformMatrix3fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8053   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8054   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8055   funcs->ext.p_glProgramUniformMatrix3fv( program, location, count, transpose, value );
8056 }
8057
8058 static void WINAPI wine_glProgramUniformMatrix3fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8059   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8060   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8061   funcs->ext.p_glProgramUniformMatrix3fvEXT( program, location, count, transpose, value );
8062 }
8063
8064 static void WINAPI wine_glProgramUniformMatrix3x2dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8065   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8066   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8067   funcs->ext.p_glProgramUniformMatrix3x2dv( program, location, count, transpose, value );
8068 }
8069
8070 static void WINAPI wine_glProgramUniformMatrix3x2dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8071   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8072   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8073   funcs->ext.p_glProgramUniformMatrix3x2dvEXT( program, location, count, transpose, value );
8074 }
8075
8076 static void WINAPI wine_glProgramUniformMatrix3x2fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8077   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8078   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8079   funcs->ext.p_glProgramUniformMatrix3x2fv( program, location, count, transpose, value );
8080 }
8081
8082 static void WINAPI wine_glProgramUniformMatrix3x2fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8083   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8084   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8085   funcs->ext.p_glProgramUniformMatrix3x2fvEXT( program, location, count, transpose, value );
8086 }
8087
8088 static void WINAPI wine_glProgramUniformMatrix3x4dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8089   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8090   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8091   funcs->ext.p_glProgramUniformMatrix3x4dv( program, location, count, transpose, value );
8092 }
8093
8094 static void WINAPI wine_glProgramUniformMatrix3x4dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8095   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8096   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8097   funcs->ext.p_glProgramUniformMatrix3x4dvEXT( program, location, count, transpose, value );
8098 }
8099
8100 static void WINAPI wine_glProgramUniformMatrix3x4fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8101   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8102   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8103   funcs->ext.p_glProgramUniformMatrix3x4fv( program, location, count, transpose, value );
8104 }
8105
8106 static void WINAPI wine_glProgramUniformMatrix3x4fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8107   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8108   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8109   funcs->ext.p_glProgramUniformMatrix3x4fvEXT( program, location, count, transpose, value );
8110 }
8111
8112 static void WINAPI wine_glProgramUniformMatrix4dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8113   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8114   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8115   funcs->ext.p_glProgramUniformMatrix4dv( program, location, count, transpose, value );
8116 }
8117
8118 static void WINAPI wine_glProgramUniformMatrix4dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8119   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8120   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8121   funcs->ext.p_glProgramUniformMatrix4dvEXT( program, location, count, transpose, value );
8122 }
8123
8124 static void WINAPI wine_glProgramUniformMatrix4fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8125   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8126   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8127   funcs->ext.p_glProgramUniformMatrix4fv( program, location, count, transpose, value );
8128 }
8129
8130 static void WINAPI wine_glProgramUniformMatrix4fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8131   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8132   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8133   funcs->ext.p_glProgramUniformMatrix4fvEXT( program, location, count, transpose, value );
8134 }
8135
8136 static void WINAPI wine_glProgramUniformMatrix4x2dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8137   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8138   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8139   funcs->ext.p_glProgramUniformMatrix4x2dv( program, location, count, transpose, value );
8140 }
8141
8142 static void WINAPI wine_glProgramUniformMatrix4x2dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8143   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8144   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8145   funcs->ext.p_glProgramUniformMatrix4x2dvEXT( program, location, count, transpose, value );
8146 }
8147
8148 static void WINAPI wine_glProgramUniformMatrix4x2fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8149   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8150   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8151   funcs->ext.p_glProgramUniformMatrix4x2fv( program, location, count, transpose, value );
8152 }
8153
8154 static void WINAPI wine_glProgramUniformMatrix4x2fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8155   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8156   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8157   funcs->ext.p_glProgramUniformMatrix4x2fvEXT( program, location, count, transpose, value );
8158 }
8159
8160 static void WINAPI wine_glProgramUniformMatrix4x3dv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8161   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8162   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8163   funcs->ext.p_glProgramUniformMatrix4x3dv( program, location, count, transpose, value );
8164 }
8165
8166 static void WINAPI wine_glProgramUniformMatrix4x3dvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
8167   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8168   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8169   funcs->ext.p_glProgramUniformMatrix4x3dvEXT( program, location, count, transpose, value );
8170 }
8171
8172 static void WINAPI wine_glProgramUniformMatrix4x3fv( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8173   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8174   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8175   funcs->ext.p_glProgramUniformMatrix4x3fv( program, location, count, transpose, value );
8176 }
8177
8178 static void WINAPI wine_glProgramUniformMatrix4x3fvEXT( GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
8179   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8180   TRACE("(%d, %d, %d, %d, %p)\n", program, location, count, transpose, value );
8181   funcs->ext.p_glProgramUniformMatrix4x3fvEXT( program, location, count, transpose, value );
8182 }
8183
8184 static void WINAPI wine_glProgramUniformui64NV( GLuint program, GLint location, UINT64 value ) {
8185   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8186   TRACE("(%d, %d, %s)\n", program, location, wine_dbgstr_longlong(value) );
8187   funcs->ext.p_glProgramUniformui64NV( program, location, value );
8188 }
8189
8190 static void WINAPI wine_glProgramUniformui64vNV( GLuint program, GLint location, GLsizei count, const UINT64* value ) {
8191   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8192   TRACE("(%d, %d, %d, %p)\n", program, location, count, value );
8193   funcs->ext.p_glProgramUniformui64vNV( program, location, count, value );
8194 }
8195
8196 static void WINAPI wine_glProgramVertexLimitNV( GLenum target, GLint limit ) {
8197   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8198   TRACE("(%d, %d)\n", target, limit );
8199   funcs->ext.p_glProgramVertexLimitNV( target, limit );
8200 }
8201
8202 static void WINAPI wine_glProvokingVertex( GLenum mode ) {
8203   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8204   TRACE("(%d)\n", mode );
8205   funcs->ext.p_glProvokingVertex( mode );
8206 }
8207
8208 static void WINAPI wine_glProvokingVertexEXT( GLenum mode ) {
8209   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8210   TRACE("(%d)\n", mode );
8211   funcs->ext.p_glProvokingVertexEXT( mode );
8212 }
8213
8214 static void WINAPI wine_glPushClientAttribDefaultEXT( GLbitfield mask ) {
8215   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8216   TRACE("(%d)\n", mask );
8217   funcs->ext.p_glPushClientAttribDefaultEXT( mask );
8218 }
8219
8220 static void WINAPI wine_glPushDebugGroup( GLenum source, GLuint id, GLsizei length, const char* message ) {
8221   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8222   TRACE("(%d, %d, %d, %p)\n", source, id, length, message );
8223   funcs->ext.p_glPushDebugGroup( source, id, length, message );
8224 }
8225
8226 static void WINAPI wine_glQueryCounter( GLuint id, GLenum target ) {
8227   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8228   TRACE("(%d, %d)\n", id, target );
8229   funcs->ext.p_glQueryCounter( id, target );
8230 }
8231
8232 static void WINAPI wine_glReadBufferRegion( GLenum region, GLint x, GLint y, GLsizei width, GLsizei height ) {
8233   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8234   TRACE("(%d, %d, %d, %d, %d)\n", region, x, y, width, height );
8235   funcs->ext.p_glReadBufferRegion( region, x, y, width, height );
8236 }
8237
8238 static void WINAPI wine_glReadInstrumentsSGIX( GLint marker ) {
8239   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8240   TRACE("(%d)\n", marker );
8241   funcs->ext.p_glReadInstrumentsSGIX( marker );
8242 }
8243
8244 static void WINAPI wine_glReadnPixelsARB( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid* data ) {
8245   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8246   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", x, y, width, height, format, type, bufSize, data );
8247   funcs->ext.p_glReadnPixelsARB( x, y, width, height, format, type, bufSize, data );
8248 }
8249
8250 static void WINAPI wine_glReferencePlaneSGIX( const GLdouble* equation ) {
8251   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8252   TRACE("(%p)\n", equation );
8253   funcs->ext.p_glReferencePlaneSGIX( equation );
8254 }
8255
8256 static void WINAPI wine_glReleaseShaderCompiler( void ) {
8257   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8258   TRACE("()\n");
8259   funcs->ext.p_glReleaseShaderCompiler( );
8260 }
8261
8262 static void WINAPI wine_glRenderbufferStorage( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) {
8263   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8264   TRACE("(%d, %d, %d, %d)\n", target, internalformat, width, height );
8265   funcs->ext.p_glRenderbufferStorage( target, internalformat, width, height );
8266 }
8267
8268 static void WINAPI wine_glRenderbufferStorageEXT( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) {
8269   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8270   TRACE("(%d, %d, %d, %d)\n", target, internalformat, width, height );
8271   funcs->ext.p_glRenderbufferStorageEXT( target, internalformat, width, height );
8272 }
8273
8274 static void WINAPI wine_glRenderbufferStorageMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) {
8275   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8276   TRACE("(%d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height );
8277   funcs->ext.p_glRenderbufferStorageMultisample( target, samples, internalformat, width, height );
8278 }
8279
8280 static void WINAPI wine_glRenderbufferStorageMultisampleCoverageNV( GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height ) {
8281   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8282   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, coverageSamples, colorSamples, internalformat, width, height );
8283   funcs->ext.p_glRenderbufferStorageMultisampleCoverageNV( target, coverageSamples, colorSamples, internalformat, width, height );
8284 }
8285
8286 static void WINAPI wine_glRenderbufferStorageMultisampleEXT( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) {
8287   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8288   TRACE("(%d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height );
8289   funcs->ext.p_glRenderbufferStorageMultisampleEXT( target, samples, internalformat, width, height );
8290 }
8291
8292 static void WINAPI wine_glReplacementCodePointerSUN( GLenum type, GLsizei stride, const GLvoid** pointer ) {
8293   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8294   TRACE("(%d, %d, %p)\n", type, stride, pointer );
8295   funcs->ext.p_glReplacementCodePointerSUN( type, stride, pointer );
8296 }
8297
8298 static void WINAPI wine_glReplacementCodeubSUN( GLubyte code ) {
8299   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8300   TRACE("(%d)\n", code );
8301   funcs->ext.p_glReplacementCodeubSUN( code );
8302 }
8303
8304 static void WINAPI wine_glReplacementCodeubvSUN( const GLubyte* code ) {
8305   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8306   TRACE("(%p)\n", code );
8307   funcs->ext.p_glReplacementCodeubvSUN( code );
8308 }
8309
8310 static void WINAPI wine_glReplacementCodeuiColor3fVertex3fSUN( GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z ) {
8311   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8312   TRACE("(%d, %f, %f, %f, %f, %f, %f)\n", rc, r, g, b, x, y, z );
8313   funcs->ext.p_glReplacementCodeuiColor3fVertex3fSUN( rc, r, g, b, x, y, z );
8314 }
8315
8316 static void WINAPI wine_glReplacementCodeuiColor3fVertex3fvSUN( const GLuint* rc, const GLfloat* c, const GLfloat* v ) {
8317   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8318   TRACE("(%p, %p, %p)\n", rc, c, v );
8319   funcs->ext.p_glReplacementCodeuiColor3fVertex3fvSUN( rc, c, v );
8320 }
8321
8322 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 ) {
8323   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8324   TRACE("(%d, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f)\n", rc, r, g, b, a, nx, ny, nz, x, y, z );
8325   funcs->ext.p_glReplacementCodeuiColor4fNormal3fVertex3fSUN( rc, r, g, b, a, nx, ny, nz, x, y, z );
8326 }
8327
8328 static void WINAPI wine_glReplacementCodeuiColor4fNormal3fVertex3fvSUN( const GLuint* rc, const GLfloat* c, const GLfloat* n, const GLfloat* v ) {
8329   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8330   TRACE("(%p, %p, %p, %p)\n", rc, c, n, v );
8331   funcs->ext.p_glReplacementCodeuiColor4fNormal3fVertex3fvSUN( rc, c, n, v );
8332 }
8333
8334 static void WINAPI wine_glReplacementCodeuiColor4ubVertex3fSUN( GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z ) {
8335   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8336   TRACE("(%d, %d, %d, %d, %d, %f, %f, %f)\n", rc, r, g, b, a, x, y, z );
8337   funcs->ext.p_glReplacementCodeuiColor4ubVertex3fSUN( rc, r, g, b, a, x, y, z );
8338 }
8339
8340 static void WINAPI wine_glReplacementCodeuiColor4ubVertex3fvSUN( const GLuint* rc, const GLubyte* c, const GLfloat* v ) {
8341   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8342   TRACE("(%p, %p, %p)\n", rc, c, v );
8343   funcs->ext.p_glReplacementCodeuiColor4ubVertex3fvSUN( rc, c, v );
8344 }
8345
8346 static void WINAPI wine_glReplacementCodeuiNormal3fVertex3fSUN( GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
8347   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8348   TRACE("(%d, %f, %f, %f, %f, %f, %f)\n", rc, nx, ny, nz, x, y, z );
8349   funcs->ext.p_glReplacementCodeuiNormal3fVertex3fSUN( rc, nx, ny, nz, x, y, z );
8350 }
8351
8352 static void WINAPI wine_glReplacementCodeuiNormal3fVertex3fvSUN( const GLuint* rc, const GLfloat* n, const GLfloat* v ) {
8353   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8354   TRACE("(%p, %p, %p)\n", rc, n, v );
8355   funcs->ext.p_glReplacementCodeuiNormal3fVertex3fvSUN( rc, n, v );
8356 }
8357
8358 static void WINAPI wine_glReplacementCodeuiSUN( GLuint code ) {
8359   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8360   TRACE("(%d)\n", code );
8361   funcs->ext.p_glReplacementCodeuiSUN( code );
8362 }
8363
8364 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 ) {
8365   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8366   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 );
8367   funcs->ext.p_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN( rc, s, t, r, g, b, a, nx, ny, nz, x, y, z );
8368 }
8369
8370 static void WINAPI wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN( const GLuint* rc, const GLfloat* tc, const GLfloat* c, const GLfloat* n, const GLfloat* v ) {
8371   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8372   TRACE("(%p, %p, %p, %p, %p)\n", rc, tc, c, n, v );
8373   funcs->ext.p_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN( rc, tc, c, n, v );
8374 }
8375
8376 static void WINAPI wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN( GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
8377   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8378   TRACE("(%d, %f, %f, %f, %f, %f, %f, %f, %f)\n", rc, s, t, nx, ny, nz, x, y, z );
8379   funcs->ext.p_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN( rc, s, t, nx, ny, nz, x, y, z );
8380 }
8381
8382 static void WINAPI wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN( const GLuint* rc, const GLfloat* tc, const GLfloat* n, const GLfloat* v ) {
8383   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8384   TRACE("(%p, %p, %p, %p)\n", rc, tc, n, v );
8385   funcs->ext.p_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN( rc, tc, n, v );
8386 }
8387
8388 static void WINAPI wine_glReplacementCodeuiTexCoord2fVertex3fSUN( GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z ) {
8389   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8390   TRACE("(%d, %f, %f, %f, %f, %f)\n", rc, s, t, x, y, z );
8391   funcs->ext.p_glReplacementCodeuiTexCoord2fVertex3fSUN( rc, s, t, x, y, z );
8392 }
8393
8394 static void WINAPI wine_glReplacementCodeuiTexCoord2fVertex3fvSUN( const GLuint* rc, const GLfloat* tc, const GLfloat* v ) {
8395   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8396   TRACE("(%p, %p, %p)\n", rc, tc, v );
8397   funcs->ext.p_glReplacementCodeuiTexCoord2fVertex3fvSUN( rc, tc, v );
8398 }
8399
8400 static void WINAPI wine_glReplacementCodeuiVertex3fSUN( GLuint rc, GLfloat x, GLfloat y, GLfloat z ) {
8401   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8402   TRACE("(%d, %f, %f, %f)\n", rc, x, y, z );
8403   funcs->ext.p_glReplacementCodeuiVertex3fSUN( rc, x, y, z );
8404 }
8405
8406 static void WINAPI wine_glReplacementCodeuiVertex3fvSUN( const GLuint* rc, const GLfloat* v ) {
8407   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8408   TRACE("(%p, %p)\n", rc, v );
8409   funcs->ext.p_glReplacementCodeuiVertex3fvSUN( rc, v );
8410 }
8411
8412 static void WINAPI wine_glReplacementCodeuivSUN( const GLuint* code ) {
8413   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8414   TRACE("(%p)\n", code );
8415   funcs->ext.p_glReplacementCodeuivSUN( code );
8416 }
8417
8418 static void WINAPI wine_glReplacementCodeusSUN( GLushort code ) {
8419   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8420   TRACE("(%d)\n", code );
8421   funcs->ext.p_glReplacementCodeusSUN( code );
8422 }
8423
8424 static void WINAPI wine_glReplacementCodeusvSUN( const GLushort* code ) {
8425   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8426   TRACE("(%p)\n", code );
8427   funcs->ext.p_glReplacementCodeusvSUN( code );
8428 }
8429
8430 static void WINAPI wine_glRequestResidentProgramsNV( GLsizei n, const GLuint* programs ) {
8431   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8432   TRACE("(%d, %p)\n", n, programs );
8433   funcs->ext.p_glRequestResidentProgramsNV( n, programs );
8434 }
8435
8436 static void WINAPI wine_glResetHistogram( GLenum target ) {
8437   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8438   TRACE("(%d)\n", target );
8439   funcs->ext.p_glResetHistogram( target );
8440 }
8441
8442 static void WINAPI wine_glResetHistogramEXT( GLenum target ) {
8443   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8444   TRACE("(%d)\n", target );
8445   funcs->ext.p_glResetHistogramEXT( target );
8446 }
8447
8448 static void WINAPI wine_glResetMinmax( GLenum target ) {
8449   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8450   TRACE("(%d)\n", target );
8451   funcs->ext.p_glResetMinmax( target );
8452 }
8453
8454 static void WINAPI wine_glResetMinmaxEXT( GLenum target ) {
8455   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8456   TRACE("(%d)\n", target );
8457   funcs->ext.p_glResetMinmaxEXT( target );
8458 }
8459
8460 static void WINAPI wine_glResizeBuffersMESA( void ) {
8461   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8462   TRACE("()\n");
8463   funcs->ext.p_glResizeBuffersMESA( );
8464 }
8465
8466 static void WINAPI wine_glResumeTransformFeedback( void ) {
8467   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8468   TRACE("()\n");
8469   funcs->ext.p_glResumeTransformFeedback( );
8470 }
8471
8472 static void WINAPI wine_glResumeTransformFeedbackNV( void ) {
8473   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8474   TRACE("()\n");
8475   funcs->ext.p_glResumeTransformFeedbackNV( );
8476 }
8477
8478 static void WINAPI wine_glSampleCoverage( GLfloat value, GLboolean invert ) {
8479   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8480   TRACE("(%f, %d)\n", value, invert );
8481   funcs->ext.p_glSampleCoverage( value, invert );
8482 }
8483
8484 static void WINAPI wine_glSampleCoverageARB( GLfloat value, GLboolean invert ) {
8485   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8486   TRACE("(%f, %d)\n", value, invert );
8487   funcs->ext.p_glSampleCoverageARB( value, invert );
8488 }
8489
8490 static void WINAPI wine_glSampleMapATI( GLuint dst, GLuint interp, GLenum swizzle ) {
8491   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8492   TRACE("(%d, %d, %d)\n", dst, interp, swizzle );
8493   funcs->ext.p_glSampleMapATI( dst, interp, swizzle );
8494 }
8495
8496 static void WINAPI wine_glSampleMaskEXT( GLclampf value, GLboolean invert ) {
8497   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8498   TRACE("(%f, %d)\n", value, invert );
8499   funcs->ext.p_glSampleMaskEXT( value, invert );
8500 }
8501
8502 static void WINAPI wine_glSampleMaskIndexedNV( GLuint index, GLbitfield mask ) {
8503   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8504   TRACE("(%d, %d)\n", index, mask );
8505   funcs->ext.p_glSampleMaskIndexedNV( index, mask );
8506 }
8507
8508 static void WINAPI wine_glSampleMaskSGIS( GLclampf value, GLboolean invert ) {
8509   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8510   TRACE("(%f, %d)\n", value, invert );
8511   funcs->ext.p_glSampleMaskSGIS( value, invert );
8512 }
8513
8514 static void WINAPI wine_glSampleMaski( GLuint index, GLbitfield mask ) {
8515   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8516   TRACE("(%d, %d)\n", index, mask );
8517   funcs->ext.p_glSampleMaski( index, mask );
8518 }
8519
8520 static void WINAPI wine_glSamplePatternEXT( GLenum pattern ) {
8521   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8522   TRACE("(%d)\n", pattern );
8523   funcs->ext.p_glSamplePatternEXT( pattern );
8524 }
8525
8526 static void WINAPI wine_glSamplePatternSGIS( GLenum pattern ) {
8527   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8528   TRACE("(%d)\n", pattern );
8529   funcs->ext.p_glSamplePatternSGIS( pattern );
8530 }
8531
8532 static void WINAPI wine_glSamplerParameterIiv( GLuint sampler, GLenum pname, const GLint* param ) {
8533   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8534   TRACE("(%d, %d, %p)\n", sampler, pname, param );
8535   funcs->ext.p_glSamplerParameterIiv( sampler, pname, param );
8536 }
8537
8538 static void WINAPI wine_glSamplerParameterIuiv( GLuint sampler, GLenum pname, const GLuint* param ) {
8539   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8540   TRACE("(%d, %d, %p)\n", sampler, pname, param );
8541   funcs->ext.p_glSamplerParameterIuiv( sampler, pname, param );
8542 }
8543
8544 static void WINAPI wine_glSamplerParameterf( GLuint sampler, GLenum pname, GLfloat param ) {
8545   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8546   TRACE("(%d, %d, %f)\n", sampler, pname, param );
8547   funcs->ext.p_glSamplerParameterf( sampler, pname, param );
8548 }
8549
8550 static void WINAPI wine_glSamplerParameterfv( GLuint sampler, GLenum pname, const GLfloat* param ) {
8551   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8552   TRACE("(%d, %d, %p)\n", sampler, pname, param );
8553   funcs->ext.p_glSamplerParameterfv( sampler, pname, param );
8554 }
8555
8556 static void WINAPI wine_glSamplerParameteri( GLuint sampler, GLenum pname, GLint param ) {
8557   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8558   TRACE("(%d, %d, %d)\n", sampler, pname, param );
8559   funcs->ext.p_glSamplerParameteri( sampler, pname, param );
8560 }
8561
8562 static void WINAPI wine_glSamplerParameteriv( GLuint sampler, GLenum pname, const GLint* param ) {
8563   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8564   TRACE("(%d, %d, %p)\n", sampler, pname, param );
8565   funcs->ext.p_glSamplerParameteriv( sampler, pname, param );
8566 }
8567
8568 static void WINAPI wine_glScissorArrayv( GLuint first, GLsizei count, const GLint* v ) {
8569   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8570   TRACE("(%d, %d, %p)\n", first, count, v );
8571   funcs->ext.p_glScissorArrayv( first, count, v );
8572 }
8573
8574 static void WINAPI wine_glScissorIndexed( GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height ) {
8575   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8576   TRACE("(%d, %d, %d, %d, %d)\n", index, left, bottom, width, height );
8577   funcs->ext.p_glScissorIndexed( index, left, bottom, width, height );
8578 }
8579
8580 static void WINAPI wine_glScissorIndexedv( GLuint index, const GLint* v ) {
8581   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8582   TRACE("(%d, %p)\n", index, v );
8583   funcs->ext.p_glScissorIndexedv( index, v );
8584 }
8585
8586 static void WINAPI wine_glSecondaryColor3b( GLbyte red, GLbyte green, GLbyte blue ) {
8587   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8588   TRACE("(%d, %d, %d)\n", red, green, blue );
8589   funcs->ext.p_glSecondaryColor3b( red, green, blue );
8590 }
8591
8592 static void WINAPI wine_glSecondaryColor3bEXT( GLbyte red, GLbyte green, GLbyte blue ) {
8593   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8594   TRACE("(%d, %d, %d)\n", red, green, blue );
8595   funcs->ext.p_glSecondaryColor3bEXT( red, green, blue );
8596 }
8597
8598 static void WINAPI wine_glSecondaryColor3bv( const GLbyte* v ) {
8599   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8600   TRACE("(%p)\n", v );
8601   funcs->ext.p_glSecondaryColor3bv( v );
8602 }
8603
8604 static void WINAPI wine_glSecondaryColor3bvEXT( const GLbyte* v ) {
8605   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8606   TRACE("(%p)\n", v );
8607   funcs->ext.p_glSecondaryColor3bvEXT( v );
8608 }
8609
8610 static void WINAPI wine_glSecondaryColor3d( GLdouble red, GLdouble green, GLdouble blue ) {
8611   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8612   TRACE("(%f, %f, %f)\n", red, green, blue );
8613   funcs->ext.p_glSecondaryColor3d( red, green, blue );
8614 }
8615
8616 static void WINAPI wine_glSecondaryColor3dEXT( GLdouble red, GLdouble green, GLdouble blue ) {
8617   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8618   TRACE("(%f, %f, %f)\n", red, green, blue );
8619   funcs->ext.p_glSecondaryColor3dEXT( red, green, blue );
8620 }
8621
8622 static void WINAPI wine_glSecondaryColor3dv( const GLdouble* v ) {
8623   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8624   TRACE("(%p)\n", v );
8625   funcs->ext.p_glSecondaryColor3dv( v );
8626 }
8627
8628 static void WINAPI wine_glSecondaryColor3dvEXT( const GLdouble* v ) {
8629   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8630   TRACE("(%p)\n", v );
8631   funcs->ext.p_glSecondaryColor3dvEXT( v );
8632 }
8633
8634 static void WINAPI wine_glSecondaryColor3f( GLfloat red, GLfloat green, GLfloat blue ) {
8635   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8636   TRACE("(%f, %f, %f)\n", red, green, blue );
8637   funcs->ext.p_glSecondaryColor3f( red, green, blue );
8638 }
8639
8640 static void WINAPI wine_glSecondaryColor3fEXT( GLfloat red, GLfloat green, GLfloat blue ) {
8641   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8642   TRACE("(%f, %f, %f)\n", red, green, blue );
8643   funcs->ext.p_glSecondaryColor3fEXT( red, green, blue );
8644 }
8645
8646 static void WINAPI wine_glSecondaryColor3fv( const GLfloat* v ) {
8647   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8648   TRACE("(%p)\n", v );
8649   funcs->ext.p_glSecondaryColor3fv( v );
8650 }
8651
8652 static void WINAPI wine_glSecondaryColor3fvEXT( const GLfloat* v ) {
8653   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8654   TRACE("(%p)\n", v );
8655   funcs->ext.p_glSecondaryColor3fvEXT( v );
8656 }
8657
8658 static void WINAPI wine_glSecondaryColor3hNV( unsigned short red, unsigned short green, unsigned short blue ) {
8659   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8660   TRACE("(%d, %d, %d)\n", red, green, blue );
8661   funcs->ext.p_glSecondaryColor3hNV( red, green, blue );
8662 }
8663
8664 static void WINAPI wine_glSecondaryColor3hvNV( const unsigned short* v ) {
8665   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8666   TRACE("(%p)\n", v );
8667   funcs->ext.p_glSecondaryColor3hvNV( v );
8668 }
8669
8670 static void WINAPI wine_glSecondaryColor3i( GLint red, GLint green, GLint blue ) {
8671   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8672   TRACE("(%d, %d, %d)\n", red, green, blue );
8673   funcs->ext.p_glSecondaryColor3i( red, green, blue );
8674 }
8675
8676 static void WINAPI wine_glSecondaryColor3iEXT( GLint red, GLint green, GLint blue ) {
8677   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8678   TRACE("(%d, %d, %d)\n", red, green, blue );
8679   funcs->ext.p_glSecondaryColor3iEXT( red, green, blue );
8680 }
8681
8682 static void WINAPI wine_glSecondaryColor3iv( const GLint* v ) {
8683   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8684   TRACE("(%p)\n", v );
8685   funcs->ext.p_glSecondaryColor3iv( v );
8686 }
8687
8688 static void WINAPI wine_glSecondaryColor3ivEXT( const GLint* v ) {
8689   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8690   TRACE("(%p)\n", v );
8691   funcs->ext.p_glSecondaryColor3ivEXT( v );
8692 }
8693
8694 static void WINAPI wine_glSecondaryColor3s( GLshort red, GLshort green, GLshort blue ) {
8695   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8696   TRACE("(%d, %d, %d)\n", red, green, blue );
8697   funcs->ext.p_glSecondaryColor3s( red, green, blue );
8698 }
8699
8700 static void WINAPI wine_glSecondaryColor3sEXT( GLshort red, GLshort green, GLshort blue ) {
8701   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8702   TRACE("(%d, %d, %d)\n", red, green, blue );
8703   funcs->ext.p_glSecondaryColor3sEXT( red, green, blue );
8704 }
8705
8706 static void WINAPI wine_glSecondaryColor3sv( const GLshort* v ) {
8707   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8708   TRACE("(%p)\n", v );
8709   funcs->ext.p_glSecondaryColor3sv( v );
8710 }
8711
8712 static void WINAPI wine_glSecondaryColor3svEXT( const GLshort* v ) {
8713   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8714   TRACE("(%p)\n", v );
8715   funcs->ext.p_glSecondaryColor3svEXT( v );
8716 }
8717
8718 static void WINAPI wine_glSecondaryColor3ub( GLubyte red, GLubyte green, GLubyte blue ) {
8719   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8720   TRACE("(%d, %d, %d)\n", red, green, blue );
8721   funcs->ext.p_glSecondaryColor3ub( red, green, blue );
8722 }
8723
8724 static void WINAPI wine_glSecondaryColor3ubEXT( GLubyte red, GLubyte green, GLubyte blue ) {
8725   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8726   TRACE("(%d, %d, %d)\n", red, green, blue );
8727   funcs->ext.p_glSecondaryColor3ubEXT( red, green, blue );
8728 }
8729
8730 static void WINAPI wine_glSecondaryColor3ubv( const GLubyte* v ) {
8731   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8732   TRACE("(%p)\n", v );
8733   funcs->ext.p_glSecondaryColor3ubv( v );
8734 }
8735
8736 static void WINAPI wine_glSecondaryColor3ubvEXT( const GLubyte* v ) {
8737   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8738   TRACE("(%p)\n", v );
8739   funcs->ext.p_glSecondaryColor3ubvEXT( v );
8740 }
8741
8742 static void WINAPI wine_glSecondaryColor3ui( GLuint red, GLuint green, GLuint blue ) {
8743   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8744   TRACE("(%d, %d, %d)\n", red, green, blue );
8745   funcs->ext.p_glSecondaryColor3ui( red, green, blue );
8746 }
8747
8748 static void WINAPI wine_glSecondaryColor3uiEXT( GLuint red, GLuint green, GLuint blue ) {
8749   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8750   TRACE("(%d, %d, %d)\n", red, green, blue );
8751   funcs->ext.p_glSecondaryColor3uiEXT( red, green, blue );
8752 }
8753
8754 static void WINAPI wine_glSecondaryColor3uiv( const GLuint* v ) {
8755   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8756   TRACE("(%p)\n", v );
8757   funcs->ext.p_glSecondaryColor3uiv( v );
8758 }
8759
8760 static void WINAPI wine_glSecondaryColor3uivEXT( const GLuint* v ) {
8761   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8762   TRACE("(%p)\n", v );
8763   funcs->ext.p_glSecondaryColor3uivEXT( v );
8764 }
8765
8766 static void WINAPI wine_glSecondaryColor3us( GLushort red, GLushort green, GLushort blue ) {
8767   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8768   TRACE("(%d, %d, %d)\n", red, green, blue );
8769   funcs->ext.p_glSecondaryColor3us( red, green, blue );
8770 }
8771
8772 static void WINAPI wine_glSecondaryColor3usEXT( GLushort red, GLushort green, GLushort blue ) {
8773   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8774   TRACE("(%d, %d, %d)\n", red, green, blue );
8775   funcs->ext.p_glSecondaryColor3usEXT( red, green, blue );
8776 }
8777
8778 static void WINAPI wine_glSecondaryColor3usv( const GLushort* v ) {
8779   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8780   TRACE("(%p)\n", v );
8781   funcs->ext.p_glSecondaryColor3usv( v );
8782 }
8783
8784 static void WINAPI wine_glSecondaryColor3usvEXT( const GLushort* v ) {
8785   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8786   TRACE("(%p)\n", v );
8787   funcs->ext.p_glSecondaryColor3usvEXT( v );
8788 }
8789
8790 static void WINAPI wine_glSecondaryColorFormatNV( GLint size, GLenum type, GLsizei stride ) {
8791   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8792   TRACE("(%d, %d, %d)\n", size, type, stride );
8793   funcs->ext.p_glSecondaryColorFormatNV( size, type, stride );
8794 }
8795
8796 static void WINAPI wine_glSecondaryColorP3ui( GLenum type, GLuint color ) {
8797   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8798   TRACE("(%d, %d)\n", type, color );
8799   funcs->ext.p_glSecondaryColorP3ui( type, color );
8800 }
8801
8802 static void WINAPI wine_glSecondaryColorP3uiv( GLenum type, const GLuint* color ) {
8803   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8804   TRACE("(%d, %p)\n", type, color );
8805   funcs->ext.p_glSecondaryColorP3uiv( type, color );
8806 }
8807
8808 static void WINAPI wine_glSecondaryColorPointer( GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
8809   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8810   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
8811   funcs->ext.p_glSecondaryColorPointer( size, type, stride, pointer );
8812 }
8813
8814 static void WINAPI wine_glSecondaryColorPointerEXT( GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
8815   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8816   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
8817   funcs->ext.p_glSecondaryColorPointerEXT( size, type, stride, pointer );
8818 }
8819
8820 static void WINAPI wine_glSecondaryColorPointerListIBM( GLint size, GLenum type, GLint stride, const GLvoid** pointer, GLint ptrstride ) {
8821   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8822   TRACE("(%d, %d, %d, %p, %d)\n", size, type, stride, pointer, ptrstride );
8823   funcs->ext.p_glSecondaryColorPointerListIBM( size, type, stride, pointer, ptrstride );
8824 }
8825
8826 static void WINAPI wine_glSelectPerfMonitorCountersAMD( GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList ) {
8827   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8828   TRACE("(%d, %d, %d, %d, %p)\n", monitor, enable, group, numCounters, counterList );
8829   funcs->ext.p_glSelectPerfMonitorCountersAMD( monitor, enable, group, numCounters, counterList );
8830 }
8831
8832 static void WINAPI wine_glSelectTextureCoordSetSGIS( GLenum target ) {
8833   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8834   TRACE("(%d)\n", target );
8835   funcs->ext.p_glSelectTextureCoordSetSGIS( target );
8836 }
8837
8838 static void WINAPI wine_glSelectTextureSGIS( GLenum target ) {
8839   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8840   TRACE("(%d)\n", target );
8841   funcs->ext.p_glSelectTextureSGIS( target );
8842 }
8843
8844 static void WINAPI wine_glSeparableFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* row, const GLvoid* column ) {
8845   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8846   TRACE("(%d, %d, %d, %d, %d, %d, %p, %p)\n", target, internalformat, width, height, format, type, row, column );
8847   funcs->ext.p_glSeparableFilter2D( target, internalformat, width, height, format, type, row, column );
8848 }
8849
8850 static void WINAPI wine_glSeparableFilter2DEXT( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* row, const GLvoid* column ) {
8851   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8852   TRACE("(%d, %d, %d, %d, %d, %d, %p, %p)\n", target, internalformat, width, height, format, type, row, column );
8853   funcs->ext.p_glSeparableFilter2DEXT( target, internalformat, width, height, format, type, row, column );
8854 }
8855
8856 static void WINAPI wine_glSetFenceAPPLE( GLuint fence ) {
8857   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8858   TRACE("(%d)\n", fence );
8859   funcs->ext.p_glSetFenceAPPLE( fence );
8860 }
8861
8862 static void WINAPI wine_glSetFenceNV( GLuint fence, GLenum condition ) {
8863   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8864   TRACE("(%d, %d)\n", fence, condition );
8865   funcs->ext.p_glSetFenceNV( fence, condition );
8866 }
8867
8868 static void WINAPI wine_glSetFragmentShaderConstantATI( GLuint dst, const GLfloat* value ) {
8869   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8870   TRACE("(%d, %p)\n", dst, value );
8871   funcs->ext.p_glSetFragmentShaderConstantATI( dst, value );
8872 }
8873
8874 static void WINAPI wine_glSetInvariantEXT( GLuint id, GLenum type, const GLvoid* addr ) {
8875   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8876   TRACE("(%d, %d, %p)\n", id, type, addr );
8877   funcs->ext.p_glSetInvariantEXT( id, type, addr );
8878 }
8879
8880 static void WINAPI wine_glSetLocalConstantEXT( GLuint id, GLenum type, const GLvoid* addr ) {
8881   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8882   TRACE("(%d, %d, %p)\n", id, type, addr );
8883   funcs->ext.p_glSetLocalConstantEXT( id, type, addr );
8884 }
8885
8886 static void WINAPI wine_glSetMultisamplefvAMD( GLenum pname, GLuint index, const GLfloat* val ) {
8887   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8888   TRACE("(%d, %d, %p)\n", pname, index, val );
8889   funcs->ext.p_glSetMultisamplefvAMD( pname, index, val );
8890 }
8891
8892 static void WINAPI wine_glShaderBinary( GLsizei count, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length ) {
8893   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8894   TRACE("(%d, %p, %d, %p, %d)\n", count, shaders, binaryformat, binary, length );
8895   funcs->ext.p_glShaderBinary( count, shaders, binaryformat, binary, length );
8896 }
8897
8898 static void WINAPI wine_glShaderOp1EXT( GLenum op, GLuint res, GLuint arg1 ) {
8899   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8900   TRACE("(%d, %d, %d)\n", op, res, arg1 );
8901   funcs->ext.p_glShaderOp1EXT( op, res, arg1 );
8902 }
8903
8904 static void WINAPI wine_glShaderOp2EXT( GLenum op, GLuint res, GLuint arg1, GLuint arg2 ) {
8905   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8906   TRACE("(%d, %d, %d, %d)\n", op, res, arg1, arg2 );
8907   funcs->ext.p_glShaderOp2EXT( op, res, arg1, arg2 );
8908 }
8909
8910 static void WINAPI wine_glShaderOp3EXT( GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3 ) {
8911   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8912   TRACE("(%d, %d, %d, %d, %d)\n", op, res, arg1, arg2, arg3 );
8913   funcs->ext.p_glShaderOp3EXT( op, res, arg1, arg2, arg3 );
8914 }
8915
8916 static void WINAPI wine_glShaderSource( GLuint shader, GLsizei count, const char* const* string, const GLint* length ) {
8917   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8918   TRACE("(%d, %d, %p, %p)\n", shader, count, string, length );
8919   funcs->ext.p_glShaderSource( shader, count, string, length );
8920 }
8921
8922 static void WINAPI wine_glShaderSourceARB( unsigned int shaderObj, GLsizei count, const char** string, const GLint* length ) {
8923   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8924   TRACE("(%d, %d, %p, %p)\n", shaderObj, count, string, length );
8925   funcs->ext.p_glShaderSourceARB( shaderObj, count, string, length );
8926 }
8927
8928 static void WINAPI wine_glShaderStorageBlockBinding( GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding ) {
8929   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8930   TRACE("(%d, %d, %d)\n", program, storageBlockIndex, storageBlockBinding );
8931   funcs->ext.p_glShaderStorageBlockBinding( program, storageBlockIndex, storageBlockBinding );
8932 }
8933
8934 static void WINAPI wine_glSharpenTexFuncSGIS( GLenum target, GLsizei n, const GLfloat* points ) {
8935   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8936   TRACE("(%d, %d, %p)\n", target, n, points );
8937   funcs->ext.p_glSharpenTexFuncSGIS( target, n, points );
8938 }
8939
8940 static void WINAPI wine_glSpriteParameterfSGIX( GLenum pname, GLfloat param ) {
8941   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8942   TRACE("(%d, %f)\n", pname, param );
8943   funcs->ext.p_glSpriteParameterfSGIX( pname, param );
8944 }
8945
8946 static void WINAPI wine_glSpriteParameterfvSGIX( GLenum pname, const GLfloat* params ) {
8947   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8948   TRACE("(%d, %p)\n", pname, params );
8949   funcs->ext.p_glSpriteParameterfvSGIX( pname, params );
8950 }
8951
8952 static void WINAPI wine_glSpriteParameteriSGIX( GLenum pname, GLint param ) {
8953   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8954   TRACE("(%d, %d)\n", pname, param );
8955   funcs->ext.p_glSpriteParameteriSGIX( pname, param );
8956 }
8957
8958 static void WINAPI wine_glSpriteParameterivSGIX( GLenum pname, const GLint* params ) {
8959   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8960   TRACE("(%d, %p)\n", pname, params );
8961   funcs->ext.p_glSpriteParameterivSGIX( pname, params );
8962 }
8963
8964 static void WINAPI wine_glStartInstrumentsSGIX( void ) {
8965   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8966   TRACE("()\n");
8967   funcs->ext.p_glStartInstrumentsSGIX( );
8968 }
8969
8970 static void WINAPI wine_glStencilClearTagEXT( GLsizei stencilTagBits, GLuint stencilClearTag ) {
8971   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8972   TRACE("(%d, %d)\n", stencilTagBits, stencilClearTag );
8973   funcs->ext.p_glStencilClearTagEXT( stencilTagBits, stencilClearTag );
8974 }
8975
8976 static void WINAPI wine_glStencilFillPathInstancedNV( GLsizei numPaths, GLenum pathNameType, const GLvoid* paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum transformType, const GLfloat* transformValues ) {
8977   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8978   TRACE("(%d, %d, %p, %d, %d, %d, %d, %p)\n", numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues );
8979   funcs->ext.p_glStencilFillPathInstancedNV( numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues );
8980 }
8981
8982 static void WINAPI wine_glStencilFillPathNV( GLuint path, GLenum fillMode, GLuint mask ) {
8983   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8984   TRACE("(%d, %d, %d)\n", path, fillMode, mask );
8985   funcs->ext.p_glStencilFillPathNV( path, fillMode, mask );
8986 }
8987
8988 static void WINAPI wine_glStencilFuncSeparate( GLenum face, GLenum func, GLint ref, GLuint mask ) {
8989   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8990   TRACE("(%d, %d, %d, %d)\n", face, func, ref, mask );
8991   funcs->ext.p_glStencilFuncSeparate( face, func, ref, mask );
8992 }
8993
8994 static void WINAPI wine_glStencilFuncSeparateATI( GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask ) {
8995   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
8996   TRACE("(%d, %d, %d, %d)\n", frontfunc, backfunc, ref, mask );
8997   funcs->ext.p_glStencilFuncSeparateATI( frontfunc, backfunc, ref, mask );
8998 }
8999
9000 static void WINAPI wine_glStencilMaskSeparate( GLenum face, GLuint mask ) {
9001   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9002   TRACE("(%d, %d)\n", face, mask );
9003   funcs->ext.p_glStencilMaskSeparate( face, mask );
9004 }
9005
9006 static void WINAPI wine_glStencilOpSeparate( GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass ) {
9007   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9008   TRACE("(%d, %d, %d, %d)\n", face, sfail, dpfail, dppass );
9009   funcs->ext.p_glStencilOpSeparate( face, sfail, dpfail, dppass );
9010 }
9011
9012 static void WINAPI wine_glStencilOpSeparateATI( GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass ) {
9013   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9014   TRACE("(%d, %d, %d, %d)\n", face, sfail, dpfail, dppass );
9015   funcs->ext.p_glStencilOpSeparateATI( face, sfail, dpfail, dppass );
9016 }
9017
9018 static void WINAPI wine_glStencilOpValueAMD( GLenum face, GLuint value ) {
9019   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9020   TRACE("(%d, %d)\n", face, value );
9021   funcs->ext.p_glStencilOpValueAMD( face, value );
9022 }
9023
9024 static void WINAPI wine_glStencilStrokePathInstancedNV( GLsizei numPaths, GLenum pathNameType, const GLvoid* paths, GLuint pathBase, GLint reference, GLuint mask, GLenum transformType, const GLfloat* transformValues ) {
9025   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9026   TRACE("(%d, %d, %p, %d, %d, %d, %d, %p)\n", numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues );
9027   funcs->ext.p_glStencilStrokePathInstancedNV( numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues );
9028 }
9029
9030 static void WINAPI wine_glStencilStrokePathNV( GLuint path, GLint reference, GLuint mask ) {
9031   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9032   TRACE("(%d, %d, %d)\n", path, reference, mask );
9033   funcs->ext.p_glStencilStrokePathNV( path, reference, mask );
9034 }
9035
9036 static void WINAPI wine_glStopInstrumentsSGIX( GLint marker ) {
9037   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9038   TRACE("(%d)\n", marker );
9039   funcs->ext.p_glStopInstrumentsSGIX( marker );
9040 }
9041
9042 static void WINAPI wine_glStringMarkerGREMEDY( GLsizei len, const GLvoid* string ) {
9043   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9044   TRACE("(%d, %p)\n", len, string );
9045   funcs->ext.p_glStringMarkerGREMEDY( len, string );
9046 }
9047
9048 static void WINAPI wine_glSwizzleEXT( GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW ) {
9049   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9050   TRACE("(%d, %d, %d, %d, %d, %d)\n", res, in, outX, outY, outZ, outW );
9051   funcs->ext.p_glSwizzleEXT( res, in, outX, outY, outZ, outW );
9052 }
9053
9054 static void WINAPI wine_glTagSampleBufferSGIX( void ) {
9055   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9056   TRACE("()\n");
9057   funcs->ext.p_glTagSampleBufferSGIX( );
9058 }
9059
9060 static void WINAPI wine_glTangent3bEXT( GLbyte tx, GLbyte ty, GLbyte tz ) {
9061   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9062   TRACE("(%d, %d, %d)\n", tx, ty, tz );
9063   funcs->ext.p_glTangent3bEXT( tx, ty, tz );
9064 }
9065
9066 static void WINAPI wine_glTangent3bvEXT( const GLbyte* v ) {
9067   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9068   TRACE("(%p)\n", v );
9069   funcs->ext.p_glTangent3bvEXT( v );
9070 }
9071
9072 static void WINAPI wine_glTangent3dEXT( GLdouble tx, GLdouble ty, GLdouble tz ) {
9073   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9074   TRACE("(%f, %f, %f)\n", tx, ty, tz );
9075   funcs->ext.p_glTangent3dEXT( tx, ty, tz );
9076 }
9077
9078 static void WINAPI wine_glTangent3dvEXT( const GLdouble* v ) {
9079   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9080   TRACE("(%p)\n", v );
9081   funcs->ext.p_glTangent3dvEXT( v );
9082 }
9083
9084 static void WINAPI wine_glTangent3fEXT( GLfloat tx, GLfloat ty, GLfloat tz ) {
9085   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9086   TRACE("(%f, %f, %f)\n", tx, ty, tz );
9087   funcs->ext.p_glTangent3fEXT( tx, ty, tz );
9088 }
9089
9090 static void WINAPI wine_glTangent3fvEXT( const GLfloat* v ) {
9091   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9092   TRACE("(%p)\n", v );
9093   funcs->ext.p_glTangent3fvEXT( v );
9094 }
9095
9096 static void WINAPI wine_glTangent3iEXT( GLint tx, GLint ty, GLint tz ) {
9097   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9098   TRACE("(%d, %d, %d)\n", tx, ty, tz );
9099   funcs->ext.p_glTangent3iEXT( tx, ty, tz );
9100 }
9101
9102 static void WINAPI wine_glTangent3ivEXT( const GLint* v ) {
9103   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9104   TRACE("(%p)\n", v );
9105   funcs->ext.p_glTangent3ivEXT( v );
9106 }
9107
9108 static void WINAPI wine_glTangent3sEXT( GLshort tx, GLshort ty, GLshort tz ) {
9109   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9110   TRACE("(%d, %d, %d)\n", tx, ty, tz );
9111   funcs->ext.p_glTangent3sEXT( tx, ty, tz );
9112 }
9113
9114 static void WINAPI wine_glTangent3svEXT( const GLshort* v ) {
9115   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9116   TRACE("(%p)\n", v );
9117   funcs->ext.p_glTangent3svEXT( v );
9118 }
9119
9120 static void WINAPI wine_glTangentPointerEXT( GLenum type, GLsizei stride, const GLvoid* pointer ) {
9121   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9122   TRACE("(%d, %d, %p)\n", type, stride, pointer );
9123   funcs->ext.p_glTangentPointerEXT( type, stride, pointer );
9124 }
9125
9126 static void WINAPI wine_glTbufferMask3DFX( GLuint mask ) {
9127   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9128   TRACE("(%d)\n", mask );
9129   funcs->ext.p_glTbufferMask3DFX( mask );
9130 }
9131
9132 static void WINAPI wine_glTessellationFactorAMD( GLfloat factor ) {
9133   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9134   TRACE("(%f)\n", factor );
9135   funcs->ext.p_glTessellationFactorAMD( factor );
9136 }
9137
9138 static void WINAPI wine_glTessellationModeAMD( GLenum mode ) {
9139   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9140   TRACE("(%d)\n", mode );
9141   funcs->ext.p_glTessellationModeAMD( mode );
9142 }
9143
9144 static GLboolean WINAPI wine_glTestFenceAPPLE( GLuint fence ) {
9145   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9146   TRACE("(%d)\n", fence );
9147   return funcs->ext.p_glTestFenceAPPLE( fence );
9148 }
9149
9150 static GLboolean WINAPI wine_glTestFenceNV( GLuint fence ) {
9151   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9152   TRACE("(%d)\n", fence );
9153   return funcs->ext.p_glTestFenceNV( fence );
9154 }
9155
9156 static GLboolean WINAPI wine_glTestObjectAPPLE( GLenum object, GLuint name ) {
9157   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9158   TRACE("(%d, %d)\n", object, name );
9159   return funcs->ext.p_glTestObjectAPPLE( object, name );
9160 }
9161
9162 static void WINAPI wine_glTexBuffer( GLenum target, GLenum internalformat, GLuint buffer ) {
9163   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9164   TRACE("(%d, %d, %d)\n", target, internalformat, buffer );
9165   funcs->ext.p_glTexBuffer( target, internalformat, buffer );
9166 }
9167
9168 static void WINAPI wine_glTexBufferARB( GLenum target, GLenum internalformat, GLuint buffer ) {
9169   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9170   TRACE("(%d, %d, %d)\n", target, internalformat, buffer );
9171   funcs->ext.p_glTexBufferARB( target, internalformat, buffer );
9172 }
9173
9174 static void WINAPI wine_glTexBufferEXT( GLenum target, GLenum internalformat, GLuint buffer ) {
9175   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9176   TRACE("(%d, %d, %d)\n", target, internalformat, buffer );
9177   funcs->ext.p_glTexBufferEXT( target, internalformat, buffer );
9178 }
9179
9180 static void WINAPI wine_glTexBufferRange( GLenum target, GLenum internalformat, GLuint buffer, INT_PTR offset, INT_PTR size ) {
9181   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9182   TRACE("(%d, %d, %d, %ld, %ld)\n", target, internalformat, buffer, offset, size );
9183   funcs->ext.p_glTexBufferRange( target, internalformat, buffer, offset, size );
9184 }
9185
9186 static void WINAPI wine_glTexBumpParameterfvATI( GLenum pname, const GLfloat* param ) {
9187   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9188   TRACE("(%d, %p)\n", pname, param );
9189   funcs->ext.p_glTexBumpParameterfvATI( pname, param );
9190 }
9191
9192 static void WINAPI wine_glTexBumpParameterivATI( GLenum pname, const GLint* param ) {
9193   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9194   TRACE("(%d, %p)\n", pname, param );
9195   funcs->ext.p_glTexBumpParameterivATI( pname, param );
9196 }
9197
9198 static void WINAPI wine_glTexCoord1hNV( unsigned short s ) {
9199   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9200   TRACE("(%d)\n", s );
9201   funcs->ext.p_glTexCoord1hNV( s );
9202 }
9203
9204 static void WINAPI wine_glTexCoord1hvNV( const unsigned short* v ) {
9205   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9206   TRACE("(%p)\n", v );
9207   funcs->ext.p_glTexCoord1hvNV( v );
9208 }
9209
9210 static void WINAPI wine_glTexCoord2fColor3fVertex3fSUN( GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z ) {
9211   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9212   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f)\n", s, t, r, g, b, x, y, z );
9213   funcs->ext.p_glTexCoord2fColor3fVertex3fSUN( s, t, r, g, b, x, y, z );
9214 }
9215
9216 static void WINAPI wine_glTexCoord2fColor3fVertex3fvSUN( const GLfloat* tc, const GLfloat* c, const GLfloat* v ) {
9217   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9218   TRACE("(%p, %p, %p)\n", tc, c, v );
9219   funcs->ext.p_glTexCoord2fColor3fVertex3fvSUN( tc, c, v );
9220 }
9221
9222 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 ) {
9223   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9224   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 );
9225   funcs->ext.p_glTexCoord2fColor4fNormal3fVertex3fSUN( s, t, r, g, b, a, nx, ny, nz, x, y, z );
9226 }
9227
9228 static void WINAPI wine_glTexCoord2fColor4fNormal3fVertex3fvSUN( const GLfloat* tc, const GLfloat* c, const GLfloat* n, const GLfloat* v ) {
9229   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9230   TRACE("(%p, %p, %p, %p)\n", tc, c, n, v );
9231   funcs->ext.p_glTexCoord2fColor4fNormal3fVertex3fvSUN( tc, c, n, v );
9232 }
9233
9234 static void WINAPI wine_glTexCoord2fColor4ubVertex3fSUN( GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z ) {
9235   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9236   TRACE("(%f, %f, %d, %d, %d, %d, %f, %f, %f)\n", s, t, r, g, b, a, x, y, z );
9237   funcs->ext.p_glTexCoord2fColor4ubVertex3fSUN( s, t, r, g, b, a, x, y, z );
9238 }
9239
9240 static void WINAPI wine_glTexCoord2fColor4ubVertex3fvSUN( const GLfloat* tc, const GLubyte* c, const GLfloat* v ) {
9241   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9242   TRACE("(%p, %p, %p)\n", tc, c, v );
9243   funcs->ext.p_glTexCoord2fColor4ubVertex3fvSUN( tc, c, v );
9244 }
9245
9246 static void WINAPI wine_glTexCoord2fNormal3fVertex3fSUN( GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z ) {
9247   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9248   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f)\n", s, t, nx, ny, nz, x, y, z );
9249   funcs->ext.p_glTexCoord2fNormal3fVertex3fSUN( s, t, nx, ny, nz, x, y, z );
9250 }
9251
9252 static void WINAPI wine_glTexCoord2fNormal3fVertex3fvSUN( const GLfloat* tc, const GLfloat* n, const GLfloat* v ) {
9253   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9254   TRACE("(%p, %p, %p)\n", tc, n, v );
9255   funcs->ext.p_glTexCoord2fNormal3fVertex3fvSUN( tc, n, v );
9256 }
9257
9258 static void WINAPI wine_glTexCoord2fVertex3fSUN( GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z ) {
9259   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9260   TRACE("(%f, %f, %f, %f, %f)\n", s, t, x, y, z );
9261   funcs->ext.p_glTexCoord2fVertex3fSUN( s, t, x, y, z );
9262 }
9263
9264 static void WINAPI wine_glTexCoord2fVertex3fvSUN( const GLfloat* tc, const GLfloat* v ) {
9265   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9266   TRACE("(%p, %p)\n", tc, v );
9267   funcs->ext.p_glTexCoord2fVertex3fvSUN( tc, v );
9268 }
9269
9270 static void WINAPI wine_glTexCoord2hNV( unsigned short s, unsigned short t ) {
9271   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9272   TRACE("(%d, %d)\n", s, t );
9273   funcs->ext.p_glTexCoord2hNV( s, t );
9274 }
9275
9276 static void WINAPI wine_glTexCoord2hvNV( const unsigned short* v ) {
9277   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9278   TRACE("(%p)\n", v );
9279   funcs->ext.p_glTexCoord2hvNV( v );
9280 }
9281
9282 static void WINAPI wine_glTexCoord3hNV( unsigned short s, unsigned short t, unsigned short r ) {
9283   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9284   TRACE("(%d, %d, %d)\n", s, t, r );
9285   funcs->ext.p_glTexCoord3hNV( s, t, r );
9286 }
9287
9288 static void WINAPI wine_glTexCoord3hvNV( const unsigned short* v ) {
9289   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9290   TRACE("(%p)\n", v );
9291   funcs->ext.p_glTexCoord3hvNV( v );
9292 }
9293
9294 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 ) {
9295   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9296   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 );
9297   funcs->ext.p_glTexCoord4fColor4fNormal3fVertex4fSUN( s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w );
9298 }
9299
9300 static void WINAPI wine_glTexCoord4fColor4fNormal3fVertex4fvSUN( const GLfloat* tc, const GLfloat* c, const GLfloat* n, const GLfloat* v ) {
9301   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9302   TRACE("(%p, %p, %p, %p)\n", tc, c, n, v );
9303   funcs->ext.p_glTexCoord4fColor4fNormal3fVertex4fvSUN( tc, c, n, v );
9304 }
9305
9306 static void WINAPI wine_glTexCoord4fVertex4fSUN( GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
9307   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9308   TRACE("(%f, %f, %f, %f, %f, %f, %f, %f)\n", s, t, p, q, x, y, z, w );
9309   funcs->ext.p_glTexCoord4fVertex4fSUN( s, t, p, q, x, y, z, w );
9310 }
9311
9312 static void WINAPI wine_glTexCoord4fVertex4fvSUN( const GLfloat* tc, const GLfloat* v ) {
9313   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9314   TRACE("(%p, %p)\n", tc, v );
9315   funcs->ext.p_glTexCoord4fVertex4fvSUN( tc, v );
9316 }
9317
9318 static void WINAPI wine_glTexCoord4hNV( unsigned short s, unsigned short t, unsigned short r, unsigned short q ) {
9319   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9320   TRACE("(%d, %d, %d, %d)\n", s, t, r, q );
9321   funcs->ext.p_glTexCoord4hNV( s, t, r, q );
9322 }
9323
9324 static void WINAPI wine_glTexCoord4hvNV( const unsigned short* v ) {
9325   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9326   TRACE("(%p)\n", v );
9327   funcs->ext.p_glTexCoord4hvNV( v );
9328 }
9329
9330 static void WINAPI wine_glTexCoordFormatNV( GLint size, GLenum type, GLsizei stride ) {
9331   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9332   TRACE("(%d, %d, %d)\n", size, type, stride );
9333   funcs->ext.p_glTexCoordFormatNV( size, type, stride );
9334 }
9335
9336 static void WINAPI wine_glTexCoordP1ui( GLenum type, GLuint coords ) {
9337   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9338   TRACE("(%d, %d)\n", type, coords );
9339   funcs->ext.p_glTexCoordP1ui( type, coords );
9340 }
9341
9342 static void WINAPI wine_glTexCoordP1uiv( GLenum type, const GLuint* coords ) {
9343   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9344   TRACE("(%d, %p)\n", type, coords );
9345   funcs->ext.p_glTexCoordP1uiv( type, coords );
9346 }
9347
9348 static void WINAPI wine_glTexCoordP2ui( GLenum type, GLuint coords ) {
9349   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9350   TRACE("(%d, %d)\n", type, coords );
9351   funcs->ext.p_glTexCoordP2ui( type, coords );
9352 }
9353
9354 static void WINAPI wine_glTexCoordP2uiv( GLenum type, const GLuint* coords ) {
9355   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9356   TRACE("(%d, %p)\n", type, coords );
9357   funcs->ext.p_glTexCoordP2uiv( type, coords );
9358 }
9359
9360 static void WINAPI wine_glTexCoordP3ui( GLenum type, GLuint coords ) {
9361   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9362   TRACE("(%d, %d)\n", type, coords );
9363   funcs->ext.p_glTexCoordP3ui( type, coords );
9364 }
9365
9366 static void WINAPI wine_glTexCoordP3uiv( GLenum type, const GLuint* coords ) {
9367   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9368   TRACE("(%d, %p)\n", type, coords );
9369   funcs->ext.p_glTexCoordP3uiv( type, coords );
9370 }
9371
9372 static void WINAPI wine_glTexCoordP4ui( GLenum type, GLuint coords ) {
9373   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9374   TRACE("(%d, %d)\n", type, coords );
9375   funcs->ext.p_glTexCoordP4ui( type, coords );
9376 }
9377
9378 static void WINAPI wine_glTexCoordP4uiv( GLenum type, const GLuint* coords ) {
9379   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9380   TRACE("(%d, %p)\n", type, coords );
9381   funcs->ext.p_glTexCoordP4uiv( type, coords );
9382 }
9383
9384 static void WINAPI wine_glTexCoordPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid* pointer ) {
9385   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9386   TRACE("(%d, %d, %d, %d, %p)\n", size, type, stride, count, pointer );
9387   funcs->ext.p_glTexCoordPointerEXT( size, type, stride, count, pointer );
9388 }
9389
9390 static void WINAPI wine_glTexCoordPointerListIBM( GLint size, GLenum type, GLint stride, const GLvoid** pointer, GLint ptrstride ) {
9391   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9392   TRACE("(%d, %d, %d, %p, %d)\n", size, type, stride, pointer, ptrstride );
9393   funcs->ext.p_glTexCoordPointerListIBM( size, type, stride, pointer, ptrstride );
9394 }
9395
9396 static void WINAPI wine_glTexCoordPointervINTEL( GLint size, GLenum type, const GLvoid** pointer ) {
9397   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9398   TRACE("(%d, %d, %p)\n", size, type, pointer );
9399   funcs->ext.p_glTexCoordPointervINTEL( size, type, pointer );
9400 }
9401
9402 static void WINAPI wine_glTexFilterFuncSGIS( GLenum target, GLenum filter, GLsizei n, const GLfloat* weights ) {
9403   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9404   TRACE("(%d, %d, %d, %p)\n", target, filter, n, weights );
9405   funcs->ext.p_glTexFilterFuncSGIS( target, filter, n, weights );
9406 }
9407
9408 static void WINAPI wine_glTexImage2DMultisample( GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations ) {
9409   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9410   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height, fixedsamplelocations );
9411   funcs->ext.p_glTexImage2DMultisample( target, samples, internalformat, width, height, fixedsamplelocations );
9412 }
9413
9414 static void WINAPI wine_glTexImage2DMultisampleCoverageNV( GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations ) {
9415   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9416   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations );
9417   funcs->ext.p_glTexImage2DMultisampleCoverageNV( target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations );
9418 }
9419
9420 static void WINAPI wine_glTexImage3D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) {
9421   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9422   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, border, format, type, pixels );
9423   funcs->ext.p_glTexImage3D( target, level, internalformat, width, height, depth, border, format, type, pixels );
9424 }
9425
9426 static void WINAPI wine_glTexImage3DEXT( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) {
9427   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9428   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, border, format, type, pixels );
9429   funcs->ext.p_glTexImage3DEXT( target, level, internalformat, width, height, depth, border, format, type, pixels );
9430 }
9431
9432 static void WINAPI wine_glTexImage3DMultisample( GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations ) {
9433   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9434   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height, depth, fixedsamplelocations );
9435   funcs->ext.p_glTexImage3DMultisample( target, samples, internalformat, width, height, depth, fixedsamplelocations );
9436 }
9437
9438 static void WINAPI wine_glTexImage3DMultisampleCoverageNV( GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations ) {
9439   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9440   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations );
9441   funcs->ext.p_glTexImage3DMultisampleCoverageNV( target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations );
9442 }
9443
9444 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, const GLvoid* pixels ) {
9445   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9446   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, depth, size4d, border, format, type, pixels );
9447   funcs->ext.p_glTexImage4DSGIS( target, level, internalformat, width, height, depth, size4d, border, format, type, pixels );
9448 }
9449
9450 static void WINAPI wine_glTexParameterIiv( GLenum target, GLenum pname, const GLint* params ) {
9451   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9452   TRACE("(%d, %d, %p)\n", target, pname, params );
9453   funcs->ext.p_glTexParameterIiv( target, pname, params );
9454 }
9455
9456 static void WINAPI wine_glTexParameterIivEXT( GLenum target, GLenum pname, const GLint* params ) {
9457   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9458   TRACE("(%d, %d, %p)\n", target, pname, params );
9459   funcs->ext.p_glTexParameterIivEXT( target, pname, params );
9460 }
9461
9462 static void WINAPI wine_glTexParameterIuiv( GLenum target, GLenum pname, const GLuint* params ) {
9463   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9464   TRACE("(%d, %d, %p)\n", target, pname, params );
9465   funcs->ext.p_glTexParameterIuiv( target, pname, params );
9466 }
9467
9468 static void WINAPI wine_glTexParameterIuivEXT( GLenum target, GLenum pname, const GLuint* params ) {
9469   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9470   TRACE("(%d, %d, %p)\n", target, pname, params );
9471   funcs->ext.p_glTexParameterIuivEXT( target, pname, params );
9472 }
9473
9474 static void WINAPI wine_glTexRenderbufferNV( GLenum target, GLuint renderbuffer ) {
9475   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9476   TRACE("(%d, %d)\n", target, renderbuffer );
9477   funcs->ext.p_glTexRenderbufferNV( target, renderbuffer );
9478 }
9479
9480 static void WINAPI wine_glTexStorage1D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width ) {
9481   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9482   TRACE("(%d, %d, %d, %d)\n", target, levels, internalformat, width );
9483   funcs->ext.p_glTexStorage1D( target, levels, internalformat, width );
9484 }
9485
9486 static void WINAPI wine_glTexStorage2D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height ) {
9487   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9488   TRACE("(%d, %d, %d, %d, %d)\n", target, levels, internalformat, width, height );
9489   funcs->ext.p_glTexStorage2D( target, levels, internalformat, width, height );
9490 }
9491
9492 static void WINAPI wine_glTexStorage2DMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations ) {
9493   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9494   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height, fixedsamplelocations );
9495   funcs->ext.p_glTexStorage2DMultisample( target, samples, internalformat, width, height, fixedsamplelocations );
9496 }
9497
9498 static void WINAPI wine_glTexStorage3D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth ) {
9499   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9500   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, levels, internalformat, width, height, depth );
9501   funcs->ext.p_glTexStorage3D( target, levels, internalformat, width, height, depth );
9502 }
9503
9504 static void WINAPI wine_glTexStorage3DMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations ) {
9505   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9506   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", target, samples, internalformat, width, height, depth, fixedsamplelocations );
9507   funcs->ext.p_glTexStorage3DMultisample( target, samples, internalformat, width, height, depth, fixedsamplelocations );
9508 }
9509
9510 static void WINAPI wine_glTexSubImage1DEXT( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid* pixels ) {
9511   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9512   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, width, format, type, pixels );
9513   funcs->ext.p_glTexSubImage1DEXT( target, level, xoffset, width, format, type, pixels );
9514 }
9515
9516 static void WINAPI wine_glTexSubImage2DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels ) {
9517   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9518   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, width, height, format, type, pixels );
9519   funcs->ext.p_glTexSubImage2DEXT( target, level, xoffset, yoffset, width, height, format, type, pixels );
9520 }
9521
9522 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, const GLvoid* pixels ) {
9523   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9524   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
9525   funcs->ext.p_glTexSubImage3D( target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
9526 }
9527
9528 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, const GLvoid* pixels ) {
9529   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9530   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
9531   funcs->ext.p_glTexSubImage3DEXT( target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
9532 }
9533
9534 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, const GLvoid* pixels ) {
9535   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9536   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 );
9537   funcs->ext.p_glTexSubImage4DSGIS( target, level, xoffset, yoffset, zoffset, woffset, width, height, depth, size4d, format, type, pixels );
9538 }
9539
9540 static void WINAPI wine_glTextureBarrierNV( void ) {
9541   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9542   TRACE("()\n");
9543   funcs->ext.p_glTextureBarrierNV( );
9544 }
9545
9546 static void WINAPI wine_glTextureBufferEXT( GLuint texture, GLenum target, GLenum internalformat, GLuint buffer ) {
9547   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9548   TRACE("(%d, %d, %d, %d)\n", texture, target, internalformat, buffer );
9549   funcs->ext.p_glTextureBufferEXT( texture, target, internalformat, buffer );
9550 }
9551
9552 static void WINAPI wine_glTextureBufferRangeEXT( GLuint texture, GLenum target, GLenum internalformat, GLuint buffer, INT_PTR offset, INT_PTR size ) {
9553   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9554   TRACE("(%d, %d, %d, %d, %ld, %ld)\n", texture, target, internalformat, buffer, offset, size );
9555   funcs->ext.p_glTextureBufferRangeEXT( texture, target, internalformat, buffer, offset, size );
9556 }
9557
9558 static void WINAPI wine_glTextureColorMaskSGIS( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ) {
9559   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9560   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
9561   funcs->ext.p_glTextureColorMaskSGIS( red, green, blue, alpha );
9562 }
9563
9564 static void WINAPI wine_glTextureImage1DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) {
9565   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9566   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, border, format, type, pixels );
9567   funcs->ext.p_glTextureImage1DEXT( texture, target, level, internalformat, width, border, format, type, pixels );
9568 }
9569
9570 static void WINAPI wine_glTextureImage2DEXT( GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) {
9571   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9572   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, height, border, format, type, pixels );
9573   funcs->ext.p_glTextureImage2DEXT( texture, target, level, internalformat, width, height, border, format, type, pixels );
9574 }
9575
9576 static void WINAPI wine_glTextureImage2DMultisampleCoverageNV( GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations ) {
9577   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9578   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations );
9579   funcs->ext.p_glTextureImage2DMultisampleCoverageNV( texture, target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations );
9580 }
9581
9582 static void WINAPI wine_glTextureImage2DMultisampleNV( GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations ) {
9583   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9584   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", texture, target, samples, internalFormat, width, height, fixedSampleLocations );
9585   funcs->ext.p_glTextureImage2DMultisampleNV( texture, target, samples, internalFormat, width, height, fixedSampleLocations );
9586 }
9587
9588 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, const GLvoid* pixels ) {
9589   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9590   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, internalformat, width, height, depth, border, format, type, pixels );
9591   funcs->ext.p_glTextureImage3DEXT( texture, target, level, internalformat, width, height, depth, border, format, type, pixels );
9592 }
9593
9594 static void WINAPI wine_glTextureImage3DMultisampleCoverageNV( GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations ) {
9595   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9596   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations );
9597   funcs->ext.p_glTextureImage3DMultisampleCoverageNV( texture, target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations );
9598 }
9599
9600 static void WINAPI wine_glTextureImage3DMultisampleNV( GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations ) {
9601   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9602   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, samples, internalFormat, width, height, depth, fixedSampleLocations );
9603   funcs->ext.p_glTextureImage3DMultisampleNV( texture, target, samples, internalFormat, width, height, depth, fixedSampleLocations );
9604 }
9605
9606 static void WINAPI wine_glTextureLightEXT( GLenum pname ) {
9607   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9608   TRACE("(%d)\n", pname );
9609   funcs->ext.p_glTextureLightEXT( pname );
9610 }
9611
9612 static void WINAPI wine_glTextureMaterialEXT( GLenum face, GLenum mode ) {
9613   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9614   TRACE("(%d, %d)\n", face, mode );
9615   funcs->ext.p_glTextureMaterialEXT( face, mode );
9616 }
9617
9618 static void WINAPI wine_glTextureNormalEXT( GLenum mode ) {
9619   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9620   TRACE("(%d)\n", mode );
9621   funcs->ext.p_glTextureNormalEXT( mode );
9622 }
9623
9624 static void WINAPI wine_glTextureParameterIivEXT( GLuint texture, GLenum target, GLenum pname, const GLint* params ) {
9625   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9626   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
9627   funcs->ext.p_glTextureParameterIivEXT( texture, target, pname, params );
9628 }
9629
9630 static void WINAPI wine_glTextureParameterIuivEXT( GLuint texture, GLenum target, GLenum pname, const GLuint* params ) {
9631   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9632   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
9633   funcs->ext.p_glTextureParameterIuivEXT( texture, target, pname, params );
9634 }
9635
9636 static void WINAPI wine_glTextureParameterfEXT( GLuint texture, GLenum target, GLenum pname, GLfloat param ) {
9637   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9638   TRACE("(%d, %d, %d, %f)\n", texture, target, pname, param );
9639   funcs->ext.p_glTextureParameterfEXT( texture, target, pname, param );
9640 }
9641
9642 static void WINAPI wine_glTextureParameterfvEXT( GLuint texture, GLenum target, GLenum pname, const GLfloat* params ) {
9643   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9644   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
9645   funcs->ext.p_glTextureParameterfvEXT( texture, target, pname, params );
9646 }
9647
9648 static void WINAPI wine_glTextureParameteriEXT( GLuint texture, GLenum target, GLenum pname, GLint param ) {
9649   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9650   TRACE("(%d, %d, %d, %d)\n", texture, target, pname, param );
9651   funcs->ext.p_glTextureParameteriEXT( texture, target, pname, param );
9652 }
9653
9654 static void WINAPI wine_glTextureParameterivEXT( GLuint texture, GLenum target, GLenum pname, const GLint* params ) {
9655   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9656   TRACE("(%d, %d, %d, %p)\n", texture, target, pname, params );
9657   funcs->ext.p_glTextureParameterivEXT( texture, target, pname, params );
9658 }
9659
9660 static void WINAPI wine_glTextureRangeAPPLE( GLenum target, GLsizei length, const GLvoid* pointer ) {
9661   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9662   TRACE("(%d, %d, %p)\n", target, length, pointer );
9663   funcs->ext.p_glTextureRangeAPPLE( target, length, pointer );
9664 }
9665
9666 static void WINAPI wine_glTextureRenderbufferEXT( GLuint texture, GLenum target, GLuint renderbuffer ) {
9667   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9668   TRACE("(%d, %d, %d)\n", texture, target, renderbuffer );
9669   funcs->ext.p_glTextureRenderbufferEXT( texture, target, renderbuffer );
9670 }
9671
9672 static void WINAPI wine_glTextureStorage1DEXT( GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width ) {
9673   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9674   TRACE("(%d, %d, %d, %d, %d)\n", texture, target, levels, internalformat, width );
9675   funcs->ext.p_glTextureStorage1DEXT( texture, target, levels, internalformat, width );
9676 }
9677
9678 static void WINAPI wine_glTextureStorage2DEXT( GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height ) {
9679   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9680   TRACE("(%d, %d, %d, %d, %d, %d)\n", texture, target, levels, internalformat, width, height );
9681   funcs->ext.p_glTextureStorage2DEXT( texture, target, levels, internalformat, width, height );
9682 }
9683
9684 static void WINAPI wine_glTextureStorage2DMultisampleEXT( GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations ) {
9685   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9686   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", texture, target, samples, internalformat, width, height, fixedsamplelocations );
9687   funcs->ext.p_glTextureStorage2DMultisampleEXT( texture, target, samples, internalformat, width, height, fixedsamplelocations );
9688 }
9689
9690 static void WINAPI wine_glTextureStorage3DEXT( GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth ) {
9691   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9692   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", texture, target, levels, internalformat, width, height, depth );
9693   funcs->ext.p_glTextureStorage3DEXT( texture, target, levels, internalformat, width, height, depth );
9694 }
9695
9696 static void WINAPI wine_glTextureStorage3DMultisampleEXT( GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations ) {
9697   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9698   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, samples, internalformat, width, height, depth, fixedsamplelocations );
9699   funcs->ext.p_glTextureStorage3DMultisampleEXT( texture, target, samples, internalformat, width, height, depth, fixedsamplelocations );
9700 }
9701
9702 static void WINAPI wine_glTextureSubImage1DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid* pixels ) {
9703   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9704   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, width, format, type, pixels );
9705   funcs->ext.p_glTextureSubImage1DEXT( texture, target, level, xoffset, width, format, type, pixels );
9706 }
9707
9708 static void WINAPI wine_glTextureSubImage2DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels ) {
9709   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9710   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %p)\n", texture, target, level, xoffset, yoffset, width, height, format, type, pixels );
9711   funcs->ext.p_glTextureSubImage2DEXT( texture, target, level, xoffset, yoffset, width, height, format, type, pixels );
9712 }
9713
9714 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, const GLvoid* pixels ) {
9715   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9716   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 );
9717   funcs->ext.p_glTextureSubImage3DEXT( texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
9718 }
9719
9720 static void WINAPI wine_glTextureView( GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers ) {
9721   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9722   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers );
9723   funcs->ext.p_glTextureView( texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers );
9724 }
9725
9726 static void WINAPI wine_glTrackMatrixNV( GLenum target, GLuint address, GLenum matrix, GLenum transform ) {
9727   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9728   TRACE("(%d, %d, %d, %d)\n", target, address, matrix, transform );
9729   funcs->ext.p_glTrackMatrixNV( target, address, matrix, transform );
9730 }
9731
9732 static void WINAPI wine_glTransformFeedbackAttribsNV( GLuint count, const GLint* attribs, GLenum bufferMode ) {
9733   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9734   TRACE("(%d, %p, %d)\n", count, attribs, bufferMode );
9735   funcs->ext.p_glTransformFeedbackAttribsNV( count, attribs, bufferMode );
9736 }
9737
9738 static void WINAPI wine_glTransformFeedbackStreamAttribsNV( GLsizei count, const GLint* attribs, GLsizei nbuffers, const GLint* bufstreams, GLenum bufferMode ) {
9739   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9740   TRACE("(%d, %p, %d, %p, %d)\n", count, attribs, nbuffers, bufstreams, bufferMode );
9741   funcs->ext.p_glTransformFeedbackStreamAttribsNV( count, attribs, nbuffers, bufstreams, bufferMode );
9742 }
9743
9744 static void WINAPI wine_glTransformFeedbackVaryings( GLuint program, GLsizei count, const char* const* varyings, GLenum bufferMode ) {
9745   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9746   TRACE("(%d, %d, %p, %d)\n", program, count, varyings, bufferMode );
9747   funcs->ext.p_glTransformFeedbackVaryings( program, count, varyings, bufferMode );
9748 }
9749
9750 static void WINAPI wine_glTransformFeedbackVaryingsEXT( GLuint program, GLsizei count, const char** varyings, GLenum bufferMode ) {
9751   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9752   TRACE("(%d, %d, %p, %d)\n", program, count, varyings, bufferMode );
9753   funcs->ext.p_glTransformFeedbackVaryingsEXT( program, count, varyings, bufferMode );
9754 }
9755
9756 static void WINAPI wine_glTransformFeedbackVaryingsNV( GLuint program, GLsizei count, const GLint* locations, GLenum bufferMode ) {
9757   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9758   TRACE("(%d, %d, %p, %d)\n", program, count, locations, bufferMode );
9759   funcs->ext.p_glTransformFeedbackVaryingsNV( program, count, locations, bufferMode );
9760 }
9761
9762 static void WINAPI wine_glTransformPathNV( GLuint resultPath, GLuint srcPath, GLenum transformType, const GLfloat* transformValues ) {
9763   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9764   TRACE("(%d, %d, %d, %p)\n", resultPath, srcPath, transformType, transformValues );
9765   funcs->ext.p_glTransformPathNV( resultPath, srcPath, transformType, transformValues );
9766 }
9767
9768 static void WINAPI wine_glUniform1d( GLint location, GLdouble x ) {
9769   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9770   TRACE("(%d, %f)\n", location, x );
9771   funcs->ext.p_glUniform1d( location, x );
9772 }
9773
9774 static void WINAPI wine_glUniform1dv( GLint location, GLsizei count, const GLdouble* value ) {
9775   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9776   TRACE("(%d, %d, %p)\n", location, count, value );
9777   funcs->ext.p_glUniform1dv( location, count, value );
9778 }
9779
9780 static void WINAPI wine_glUniform1f( GLint location, GLfloat v0 ) {
9781   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9782   TRACE("(%d, %f)\n", location, v0 );
9783   funcs->ext.p_glUniform1f( location, v0 );
9784 }
9785
9786 static void WINAPI wine_glUniform1fARB( GLint location, GLfloat v0 ) {
9787   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9788   TRACE("(%d, %f)\n", location, v0 );
9789   funcs->ext.p_glUniform1fARB( location, v0 );
9790 }
9791
9792 static void WINAPI wine_glUniform1fv( GLint location, GLsizei count, const GLfloat* value ) {
9793   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9794   TRACE("(%d, %d, %p)\n", location, count, value );
9795   funcs->ext.p_glUniform1fv( location, count, value );
9796 }
9797
9798 static void WINAPI wine_glUniform1fvARB( GLint location, GLsizei count, const GLfloat* value ) {
9799   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9800   TRACE("(%d, %d, %p)\n", location, count, value );
9801   funcs->ext.p_glUniform1fvARB( location, count, value );
9802 }
9803
9804 static void WINAPI wine_glUniform1i( GLint location, GLint v0 ) {
9805   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9806   TRACE("(%d, %d)\n", location, v0 );
9807   funcs->ext.p_glUniform1i( location, v0 );
9808 }
9809
9810 static void WINAPI wine_glUniform1i64NV( GLint location, INT64 x ) {
9811   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9812   TRACE("(%d, %s)\n", location, wine_dbgstr_longlong(x) );
9813   funcs->ext.p_glUniform1i64NV( location, x );
9814 }
9815
9816 static void WINAPI wine_glUniform1i64vNV( GLint location, GLsizei count, const INT64* value ) {
9817   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9818   TRACE("(%d, %d, %p)\n", location, count, value );
9819   funcs->ext.p_glUniform1i64vNV( location, count, value );
9820 }
9821
9822 static void WINAPI wine_glUniform1iARB( GLint location, GLint v0 ) {
9823   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9824   TRACE("(%d, %d)\n", location, v0 );
9825   funcs->ext.p_glUniform1iARB( location, v0 );
9826 }
9827
9828 static void WINAPI wine_glUniform1iv( GLint location, GLsizei count, const GLint* value ) {
9829   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9830   TRACE("(%d, %d, %p)\n", location, count, value );
9831   funcs->ext.p_glUniform1iv( location, count, value );
9832 }
9833
9834 static void WINAPI wine_glUniform1ivARB( GLint location, GLsizei count, const GLint* value ) {
9835   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9836   TRACE("(%d, %d, %p)\n", location, count, value );
9837   funcs->ext.p_glUniform1ivARB( location, count, value );
9838 }
9839
9840 static void WINAPI wine_glUniform1ui( GLint location, GLuint v0 ) {
9841   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9842   TRACE("(%d, %d)\n", location, v0 );
9843   funcs->ext.p_glUniform1ui( location, v0 );
9844 }
9845
9846 static void WINAPI wine_glUniform1ui64NV( GLint location, UINT64 x ) {
9847   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9848   TRACE("(%d, %s)\n", location, wine_dbgstr_longlong(x) );
9849   funcs->ext.p_glUniform1ui64NV( location, x );
9850 }
9851
9852 static void WINAPI wine_glUniform1ui64vNV( GLint location, GLsizei count, const UINT64* value ) {
9853   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9854   TRACE("(%d, %d, %p)\n", location, count, value );
9855   funcs->ext.p_glUniform1ui64vNV( location, count, value );
9856 }
9857
9858 static void WINAPI wine_glUniform1uiEXT( GLint location, GLuint v0 ) {
9859   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9860   TRACE("(%d, %d)\n", location, v0 );
9861   funcs->ext.p_glUniform1uiEXT( location, v0 );
9862 }
9863
9864 static void WINAPI wine_glUniform1uiv( GLint location, GLsizei count, const GLuint* value ) {
9865   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9866   TRACE("(%d, %d, %p)\n", location, count, value );
9867   funcs->ext.p_glUniform1uiv( location, count, value );
9868 }
9869
9870 static void WINAPI wine_glUniform1uivEXT( GLint location, GLsizei count, const GLuint* value ) {
9871   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9872   TRACE("(%d, %d, %p)\n", location, count, value );
9873   funcs->ext.p_glUniform1uivEXT( location, count, value );
9874 }
9875
9876 static void WINAPI wine_glUniform2d( GLint location, GLdouble x, GLdouble y ) {
9877   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9878   TRACE("(%d, %f, %f)\n", location, x, y );
9879   funcs->ext.p_glUniform2d( location, x, y );
9880 }
9881
9882 static void WINAPI wine_glUniform2dv( GLint location, GLsizei count, const GLdouble* value ) {
9883   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9884   TRACE("(%d, %d, %p)\n", location, count, value );
9885   funcs->ext.p_glUniform2dv( location, count, value );
9886 }
9887
9888 static void WINAPI wine_glUniform2f( GLint location, GLfloat v0, GLfloat v1 ) {
9889   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9890   TRACE("(%d, %f, %f)\n", location, v0, v1 );
9891   funcs->ext.p_glUniform2f( location, v0, v1 );
9892 }
9893
9894 static void WINAPI wine_glUniform2fARB( GLint location, GLfloat v0, GLfloat v1 ) {
9895   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9896   TRACE("(%d, %f, %f)\n", location, v0, v1 );
9897   funcs->ext.p_glUniform2fARB( location, v0, v1 );
9898 }
9899
9900 static void WINAPI wine_glUniform2fv( GLint location, GLsizei count, const GLfloat* value ) {
9901   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9902   TRACE("(%d, %d, %p)\n", location, count, value );
9903   funcs->ext.p_glUniform2fv( location, count, value );
9904 }
9905
9906 static void WINAPI wine_glUniform2fvARB( GLint location, GLsizei count, const GLfloat* value ) {
9907   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9908   TRACE("(%d, %d, %p)\n", location, count, value );
9909   funcs->ext.p_glUniform2fvARB( location, count, value );
9910 }
9911
9912 static void WINAPI wine_glUniform2i( GLint location, GLint v0, GLint v1 ) {
9913   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9914   TRACE("(%d, %d, %d)\n", location, v0, v1 );
9915   funcs->ext.p_glUniform2i( location, v0, v1 );
9916 }
9917
9918 static void WINAPI wine_glUniform2i64NV( GLint location, INT64 x, INT64 y ) {
9919   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9920   TRACE("(%d, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
9921   funcs->ext.p_glUniform2i64NV( location, x, y );
9922 }
9923
9924 static void WINAPI wine_glUniform2i64vNV( GLint location, GLsizei count, const INT64* value ) {
9925   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9926   TRACE("(%d, %d, %p)\n", location, count, value );
9927   funcs->ext.p_glUniform2i64vNV( location, count, value );
9928 }
9929
9930 static void WINAPI wine_glUniform2iARB( GLint location, GLint v0, GLint v1 ) {
9931   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9932   TRACE("(%d, %d, %d)\n", location, v0, v1 );
9933   funcs->ext.p_glUniform2iARB( location, v0, v1 );
9934 }
9935
9936 static void WINAPI wine_glUniform2iv( GLint location, GLsizei count, const GLint* value ) {
9937   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9938   TRACE("(%d, %d, %p)\n", location, count, value );
9939   funcs->ext.p_glUniform2iv( location, count, value );
9940 }
9941
9942 static void WINAPI wine_glUniform2ivARB( GLint location, GLsizei count, const GLint* value ) {
9943   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9944   TRACE("(%d, %d, %p)\n", location, count, value );
9945   funcs->ext.p_glUniform2ivARB( location, count, value );
9946 }
9947
9948 static void WINAPI wine_glUniform2ui( GLint location, GLuint v0, GLuint v1 ) {
9949   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9950   TRACE("(%d, %d, %d)\n", location, v0, v1 );
9951   funcs->ext.p_glUniform2ui( location, v0, v1 );
9952 }
9953
9954 static void WINAPI wine_glUniform2ui64NV( GLint location, UINT64 x, UINT64 y ) {
9955   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9956   TRACE("(%d, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
9957   funcs->ext.p_glUniform2ui64NV( location, x, y );
9958 }
9959
9960 static void WINAPI wine_glUniform2ui64vNV( GLint location, GLsizei count, const UINT64* value ) {
9961   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9962   TRACE("(%d, %d, %p)\n", location, count, value );
9963   funcs->ext.p_glUniform2ui64vNV( location, count, value );
9964 }
9965
9966 static void WINAPI wine_glUniform2uiEXT( GLint location, GLuint v0, GLuint v1 ) {
9967   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9968   TRACE("(%d, %d, %d)\n", location, v0, v1 );
9969   funcs->ext.p_glUniform2uiEXT( location, v0, v1 );
9970 }
9971
9972 static void WINAPI wine_glUniform2uiv( GLint location, GLsizei count, const GLuint* value ) {
9973   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9974   TRACE("(%d, %d, %p)\n", location, count, value );
9975   funcs->ext.p_glUniform2uiv( location, count, value );
9976 }
9977
9978 static void WINAPI wine_glUniform2uivEXT( GLint location, GLsizei count, const GLuint* value ) {
9979   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9980   TRACE("(%d, %d, %p)\n", location, count, value );
9981   funcs->ext.p_glUniform2uivEXT( location, count, value );
9982 }
9983
9984 static void WINAPI wine_glUniform3d( GLint location, GLdouble x, GLdouble y, GLdouble z ) {
9985   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9986   TRACE("(%d, %f, %f, %f)\n", location, x, y, z );
9987   funcs->ext.p_glUniform3d( location, x, y, z );
9988 }
9989
9990 static void WINAPI wine_glUniform3dv( GLint location, GLsizei count, const GLdouble* value ) {
9991   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9992   TRACE("(%d, %d, %p)\n", location, count, value );
9993   funcs->ext.p_glUniform3dv( location, count, value );
9994 }
9995
9996 static void WINAPI wine_glUniform3f( GLint location, GLfloat v0, GLfloat v1, GLfloat v2 ) {
9997   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
9998   TRACE("(%d, %f, %f, %f)\n", location, v0, v1, v2 );
9999   funcs->ext.p_glUniform3f( location, v0, v1, v2 );
10000 }
10001
10002 static void WINAPI wine_glUniform3fARB( GLint location, GLfloat v0, GLfloat v1, GLfloat v2 ) {
10003   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10004   TRACE("(%d, %f, %f, %f)\n", location, v0, v1, v2 );
10005   funcs->ext.p_glUniform3fARB( location, v0, v1, v2 );
10006 }
10007
10008 static void WINAPI wine_glUniform3fv( GLint location, GLsizei count, const GLfloat* value ) {
10009   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10010   TRACE("(%d, %d, %p)\n", location, count, value );
10011   funcs->ext.p_glUniform3fv( location, count, value );
10012 }
10013
10014 static void WINAPI wine_glUniform3fvARB( GLint location, GLsizei count, const GLfloat* value ) {
10015   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10016   TRACE("(%d, %d, %p)\n", location, count, value );
10017   funcs->ext.p_glUniform3fvARB( location, count, value );
10018 }
10019
10020 static void WINAPI wine_glUniform3i( GLint location, GLint v0, GLint v1, GLint v2 ) {
10021   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10022   TRACE("(%d, %d, %d, %d)\n", location, v0, v1, v2 );
10023   funcs->ext.p_glUniform3i( location, v0, v1, v2 );
10024 }
10025
10026 static void WINAPI wine_glUniform3i64NV( GLint location, INT64 x, INT64 y, INT64 z ) {
10027   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10028   TRACE("(%d, %s, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
10029   funcs->ext.p_glUniform3i64NV( location, x, y, z );
10030 }
10031
10032 static void WINAPI wine_glUniform3i64vNV( GLint location, GLsizei count, const INT64* value ) {
10033   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10034   TRACE("(%d, %d, %p)\n", location, count, value );
10035   funcs->ext.p_glUniform3i64vNV( location, count, value );
10036 }
10037
10038 static void WINAPI wine_glUniform3iARB( GLint location, GLint v0, GLint v1, GLint v2 ) {
10039   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10040   TRACE("(%d, %d, %d, %d)\n", location, v0, v1, v2 );
10041   funcs->ext.p_glUniform3iARB( location, v0, v1, v2 );
10042 }
10043
10044 static void WINAPI wine_glUniform3iv( GLint location, GLsizei count, const GLint* value ) {
10045   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10046   TRACE("(%d, %d, %p)\n", location, count, value );
10047   funcs->ext.p_glUniform3iv( location, count, value );
10048 }
10049
10050 static void WINAPI wine_glUniform3ivARB( GLint location, GLsizei count, const GLint* value ) {
10051   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10052   TRACE("(%d, %d, %p)\n", location, count, value );
10053   funcs->ext.p_glUniform3ivARB( location, count, value );
10054 }
10055
10056 static void WINAPI wine_glUniform3ui( GLint location, GLuint v0, GLuint v1, GLuint v2 ) {
10057   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10058   TRACE("(%d, %d, %d, %d)\n", location, v0, v1, v2 );
10059   funcs->ext.p_glUniform3ui( location, v0, v1, v2 );
10060 }
10061
10062 static void WINAPI wine_glUniform3ui64NV( GLint location, UINT64 x, UINT64 y, UINT64 z ) {
10063   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10064   TRACE("(%d, %s, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
10065   funcs->ext.p_glUniform3ui64NV( location, x, y, z );
10066 }
10067
10068 static void WINAPI wine_glUniform3ui64vNV( GLint location, GLsizei count, const UINT64* value ) {
10069   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10070   TRACE("(%d, %d, %p)\n", location, count, value );
10071   funcs->ext.p_glUniform3ui64vNV( location, count, value );
10072 }
10073
10074 static void WINAPI wine_glUniform3uiEXT( GLint location, GLuint v0, GLuint v1, GLuint v2 ) {
10075   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10076   TRACE("(%d, %d, %d, %d)\n", location, v0, v1, v2 );
10077   funcs->ext.p_glUniform3uiEXT( location, v0, v1, v2 );
10078 }
10079
10080 static void WINAPI wine_glUniform3uiv( GLint location, GLsizei count, const GLuint* value ) {
10081   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10082   TRACE("(%d, %d, %p)\n", location, count, value );
10083   funcs->ext.p_glUniform3uiv( location, count, value );
10084 }
10085
10086 static void WINAPI wine_glUniform3uivEXT( GLint location, GLsizei count, const GLuint* value ) {
10087   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10088   TRACE("(%d, %d, %p)\n", location, count, value );
10089   funcs->ext.p_glUniform3uivEXT( location, count, value );
10090 }
10091
10092 static void WINAPI wine_glUniform4d( GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
10093   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10094   TRACE("(%d, %f, %f, %f, %f)\n", location, x, y, z, w );
10095   funcs->ext.p_glUniform4d( location, x, y, z, w );
10096 }
10097
10098 static void WINAPI wine_glUniform4dv( GLint location, GLsizei count, const GLdouble* value ) {
10099   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10100   TRACE("(%d, %d, %p)\n", location, count, value );
10101   funcs->ext.p_glUniform4dv( location, count, value );
10102 }
10103
10104 static void WINAPI wine_glUniform4f( GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3 ) {
10105   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10106   TRACE("(%d, %f, %f, %f, %f)\n", location, v0, v1, v2, v3 );
10107   funcs->ext.p_glUniform4f( location, v0, v1, v2, v3 );
10108 }
10109
10110 static void WINAPI wine_glUniform4fARB( GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3 ) {
10111   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10112   TRACE("(%d, %f, %f, %f, %f)\n", location, v0, v1, v2, v3 );
10113   funcs->ext.p_glUniform4fARB( location, v0, v1, v2, v3 );
10114 }
10115
10116 static void WINAPI wine_glUniform4fv( GLint location, GLsizei count, const GLfloat* value ) {
10117   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10118   TRACE("(%d, %d, %p)\n", location, count, value );
10119   funcs->ext.p_glUniform4fv( location, count, value );
10120 }
10121
10122 static void WINAPI wine_glUniform4fvARB( GLint location, GLsizei count, const GLfloat* value ) {
10123   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10124   TRACE("(%d, %d, %p)\n", location, count, value );
10125   funcs->ext.p_glUniform4fvARB( location, count, value );
10126 }
10127
10128 static void WINAPI wine_glUniform4i( GLint location, GLint v0, GLint v1, GLint v2, GLint v3 ) {
10129   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10130   TRACE("(%d, %d, %d, %d, %d)\n", location, v0, v1, v2, v3 );
10131   funcs->ext.p_glUniform4i( location, v0, v1, v2, v3 );
10132 }
10133
10134 static void WINAPI wine_glUniform4i64NV( GLint location, INT64 x, INT64 y, INT64 z, INT64 w ) {
10135   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10136   TRACE("(%d, %s, %s, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
10137   funcs->ext.p_glUniform4i64NV( location, x, y, z, w );
10138 }
10139
10140 static void WINAPI wine_glUniform4i64vNV( GLint location, GLsizei count, const INT64* value ) {
10141   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10142   TRACE("(%d, %d, %p)\n", location, count, value );
10143   funcs->ext.p_glUniform4i64vNV( location, count, value );
10144 }
10145
10146 static void WINAPI wine_glUniform4iARB( GLint location, GLint v0, GLint v1, GLint v2, GLint v3 ) {
10147   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10148   TRACE("(%d, %d, %d, %d, %d)\n", location, v0, v1, v2, v3 );
10149   funcs->ext.p_glUniform4iARB( location, v0, v1, v2, v3 );
10150 }
10151
10152 static void WINAPI wine_glUniform4iv( GLint location, GLsizei count, const GLint* value ) {
10153   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10154   TRACE("(%d, %d, %p)\n", location, count, value );
10155   funcs->ext.p_glUniform4iv( location, count, value );
10156 }
10157
10158 static void WINAPI wine_glUniform4ivARB( GLint location, GLsizei count, const GLint* value ) {
10159   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10160   TRACE("(%d, %d, %p)\n", location, count, value );
10161   funcs->ext.p_glUniform4ivARB( location, count, value );
10162 }
10163
10164 static void WINAPI wine_glUniform4ui( GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) {
10165   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10166   TRACE("(%d, %d, %d, %d, %d)\n", location, v0, v1, v2, v3 );
10167   funcs->ext.p_glUniform4ui( location, v0, v1, v2, v3 );
10168 }
10169
10170 static void WINAPI wine_glUniform4ui64NV( GLint location, UINT64 x, UINT64 y, UINT64 z, UINT64 w ) {
10171   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10172   TRACE("(%d, %s, %s, %s, %s)\n", location, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
10173   funcs->ext.p_glUniform4ui64NV( location, x, y, z, w );
10174 }
10175
10176 static void WINAPI wine_glUniform4ui64vNV( GLint location, GLsizei count, const UINT64* value ) {
10177   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10178   TRACE("(%d, %d, %p)\n", location, count, value );
10179   funcs->ext.p_glUniform4ui64vNV( location, count, value );
10180 }
10181
10182 static void WINAPI wine_glUniform4uiEXT( GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) {
10183   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10184   TRACE("(%d, %d, %d, %d, %d)\n", location, v0, v1, v2, v3 );
10185   funcs->ext.p_glUniform4uiEXT( location, v0, v1, v2, v3 );
10186 }
10187
10188 static void WINAPI wine_glUniform4uiv( GLint location, GLsizei count, const GLuint* value ) {
10189   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10190   TRACE("(%d, %d, %p)\n", location, count, value );
10191   funcs->ext.p_glUniform4uiv( location, count, value );
10192 }
10193
10194 static void WINAPI wine_glUniform4uivEXT( GLint location, GLsizei count, const GLuint* value ) {
10195   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10196   TRACE("(%d, %d, %p)\n", location, count, value );
10197   funcs->ext.p_glUniform4uivEXT( location, count, value );
10198 }
10199
10200 static void WINAPI wine_glUniformBlockBinding( GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding ) {
10201   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10202   TRACE("(%d, %d, %d)\n", program, uniformBlockIndex, uniformBlockBinding );
10203   funcs->ext.p_glUniformBlockBinding( program, uniformBlockIndex, uniformBlockBinding );
10204 }
10205
10206 static void WINAPI wine_glUniformBufferEXT( GLuint program, GLint location, GLuint buffer ) {
10207   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10208   TRACE("(%d, %d, %d)\n", program, location, buffer );
10209   funcs->ext.p_glUniformBufferEXT( program, location, buffer );
10210 }
10211
10212 static void WINAPI wine_glUniformHandleui64NV( GLint location, UINT64 value ) {
10213   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10214   TRACE("(%d, %s)\n", location, wine_dbgstr_longlong(value) );
10215   funcs->ext.p_glUniformHandleui64NV( location, value );
10216 }
10217
10218 static void WINAPI wine_glUniformHandleui64vNV( GLint location, GLsizei count, const UINT64* value ) {
10219   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10220   TRACE("(%d, %d, %p)\n", location, count, value );
10221   funcs->ext.p_glUniformHandleui64vNV( location, count, value );
10222 }
10223
10224 static void WINAPI wine_glUniformMatrix2dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10225   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10226   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10227   funcs->ext.p_glUniformMatrix2dv( location, count, transpose, value );
10228 }
10229
10230 static void WINAPI wine_glUniformMatrix2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10231   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10232   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10233   funcs->ext.p_glUniformMatrix2fv( location, count, transpose, value );
10234 }
10235
10236 static void WINAPI wine_glUniformMatrix2fvARB( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10237   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10238   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10239   funcs->ext.p_glUniformMatrix2fvARB( location, count, transpose, value );
10240 }
10241
10242 static void WINAPI wine_glUniformMatrix2x3dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10243   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10244   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10245   funcs->ext.p_glUniformMatrix2x3dv( location, count, transpose, value );
10246 }
10247
10248 static void WINAPI wine_glUniformMatrix2x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10249   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10250   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10251   funcs->ext.p_glUniformMatrix2x3fv( location, count, transpose, value );
10252 }
10253
10254 static void WINAPI wine_glUniformMatrix2x4dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10255   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10256   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10257   funcs->ext.p_glUniformMatrix2x4dv( location, count, transpose, value );
10258 }
10259
10260 static void WINAPI wine_glUniformMatrix2x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10261   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10262   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10263   funcs->ext.p_glUniformMatrix2x4fv( location, count, transpose, value );
10264 }
10265
10266 static void WINAPI wine_glUniformMatrix3dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10267   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10268   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10269   funcs->ext.p_glUniformMatrix3dv( location, count, transpose, value );
10270 }
10271
10272 static void WINAPI wine_glUniformMatrix3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10273   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10274   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10275   funcs->ext.p_glUniformMatrix3fv( location, count, transpose, value );
10276 }
10277
10278 static void WINAPI wine_glUniformMatrix3fvARB( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10279   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10280   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10281   funcs->ext.p_glUniformMatrix3fvARB( location, count, transpose, value );
10282 }
10283
10284 static void WINAPI wine_glUniformMatrix3x2dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10285   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10286   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10287   funcs->ext.p_glUniformMatrix3x2dv( location, count, transpose, value );
10288 }
10289
10290 static void WINAPI wine_glUniformMatrix3x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10291   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10292   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10293   funcs->ext.p_glUniformMatrix3x2fv( location, count, transpose, value );
10294 }
10295
10296 static void WINAPI wine_glUniformMatrix3x4dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10297   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10298   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10299   funcs->ext.p_glUniformMatrix3x4dv( location, count, transpose, value );
10300 }
10301
10302 static void WINAPI wine_glUniformMatrix3x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10303   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10304   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10305   funcs->ext.p_glUniformMatrix3x4fv( location, count, transpose, value );
10306 }
10307
10308 static void WINAPI wine_glUniformMatrix4dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10309   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10310   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10311   funcs->ext.p_glUniformMatrix4dv( location, count, transpose, value );
10312 }
10313
10314 static void WINAPI wine_glUniformMatrix4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10315   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10316   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10317   funcs->ext.p_glUniformMatrix4fv( location, count, transpose, value );
10318 }
10319
10320 static void WINAPI wine_glUniformMatrix4fvARB( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10321   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10322   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10323   funcs->ext.p_glUniformMatrix4fvARB( location, count, transpose, value );
10324 }
10325
10326 static void WINAPI wine_glUniformMatrix4x2dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10327   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10328   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10329   funcs->ext.p_glUniformMatrix4x2dv( location, count, transpose, value );
10330 }
10331
10332 static void WINAPI wine_glUniformMatrix4x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10333   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10334   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10335   funcs->ext.p_glUniformMatrix4x2fv( location, count, transpose, value );
10336 }
10337
10338 static void WINAPI wine_glUniformMatrix4x3dv( GLint location, GLsizei count, GLboolean transpose, const GLdouble* value ) {
10339   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10340   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10341   funcs->ext.p_glUniformMatrix4x3dv( location, count, transpose, value );
10342 }
10343
10344 static void WINAPI wine_glUniformMatrix4x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) {
10345   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10346   TRACE("(%d, %d, %d, %p)\n", location, count, transpose, value );
10347   funcs->ext.p_glUniformMatrix4x3fv( location, count, transpose, value );
10348 }
10349
10350 static void WINAPI wine_glUniformSubroutinesuiv( GLenum shadertype, GLsizei count, const GLuint* indices ) {
10351   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10352   TRACE("(%d, %d, %p)\n", shadertype, count, indices );
10353   funcs->ext.p_glUniformSubroutinesuiv( shadertype, count, indices );
10354 }
10355
10356 static void WINAPI wine_glUniformui64NV( GLint location, UINT64 value ) {
10357   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10358   TRACE("(%d, %s)\n", location, wine_dbgstr_longlong(value) );
10359   funcs->ext.p_glUniformui64NV( location, value );
10360 }
10361
10362 static void WINAPI wine_glUniformui64vNV( GLint location, GLsizei count, const UINT64* value ) {
10363   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10364   TRACE("(%d, %d, %p)\n", location, count, value );
10365   funcs->ext.p_glUniformui64vNV( location, count, value );
10366 }
10367
10368 static void WINAPI wine_glUnlockArraysEXT( void ) {
10369   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10370   TRACE("()\n");
10371   funcs->ext.p_glUnlockArraysEXT( );
10372 }
10373
10374 static GLboolean WINAPI wine_glUnmapBuffer( GLenum target ) {
10375   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10376   TRACE("(%d)\n", target );
10377   return funcs->ext.p_glUnmapBuffer( target );
10378 }
10379
10380 static GLboolean WINAPI wine_glUnmapBufferARB( GLenum target ) {
10381   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10382   TRACE("(%d)\n", target );
10383   return funcs->ext.p_glUnmapBufferARB( target );
10384 }
10385
10386 static GLboolean WINAPI wine_glUnmapNamedBufferEXT( GLuint buffer ) {
10387   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10388   TRACE("(%d)\n", buffer );
10389   return funcs->ext.p_glUnmapNamedBufferEXT( buffer );
10390 }
10391
10392 static void WINAPI wine_glUnmapObjectBufferATI( GLuint buffer ) {
10393   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10394   TRACE("(%d)\n", buffer );
10395   funcs->ext.p_glUnmapObjectBufferATI( buffer );
10396 }
10397
10398 static void WINAPI wine_glUpdateObjectBufferATI( GLuint buffer, GLuint offset, GLsizei size, const GLvoid* pointer, GLenum preserve ) {
10399   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10400   TRACE("(%d, %d, %d, %p, %d)\n", buffer, offset, size, pointer, preserve );
10401   funcs->ext.p_glUpdateObjectBufferATI( buffer, offset, size, pointer, preserve );
10402 }
10403
10404 static void WINAPI wine_glUseProgram( GLuint program ) {
10405   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10406   TRACE("(%d)\n", program );
10407   funcs->ext.p_glUseProgram( program );
10408 }
10409
10410 static void WINAPI wine_glUseProgramObjectARB( unsigned int programObj ) {
10411   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10412   TRACE("(%d)\n", programObj );
10413   funcs->ext.p_glUseProgramObjectARB( programObj );
10414 }
10415
10416 static void WINAPI wine_glUseProgramStages( GLuint pipeline, GLbitfield stages, GLuint program ) {
10417   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10418   TRACE("(%d, %d, %d)\n", pipeline, stages, program );
10419   funcs->ext.p_glUseProgramStages( pipeline, stages, program );
10420 }
10421
10422 static void WINAPI wine_glUseShaderProgramEXT( GLenum type, GLuint program ) {
10423   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10424   TRACE("(%d, %d)\n", type, program );
10425   funcs->ext.p_glUseShaderProgramEXT( type, program );
10426 }
10427
10428 static void WINAPI wine_glVDPAUFiniNV( void ) {
10429   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10430   TRACE("()\n");
10431   funcs->ext.p_glVDPAUFiniNV( );
10432 }
10433
10434 static void WINAPI wine_glVDPAUGetSurfaceivNV( INT_PTR surface, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values ) {
10435   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10436   TRACE("(%ld, %d, %d, %p, %p)\n", surface, pname, bufSize, length, values );
10437   funcs->ext.p_glVDPAUGetSurfaceivNV( surface, pname, bufSize, length, values );
10438 }
10439
10440 static void WINAPI wine_glVDPAUInitNV( const GLvoid* vdpDevice, const GLvoid* getProcAddress ) {
10441   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10442   TRACE("(%p, %p)\n", vdpDevice, getProcAddress );
10443   funcs->ext.p_glVDPAUInitNV( vdpDevice, getProcAddress );
10444 }
10445
10446 static void WINAPI wine_glVDPAUIsSurfaceNV( INT_PTR surface ) {
10447   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10448   TRACE("(%ld)\n", surface );
10449   funcs->ext.p_glVDPAUIsSurfaceNV( surface );
10450 }
10451
10452 static void WINAPI wine_glVDPAUMapSurfacesNV( GLsizei numSurfaces, const INT_PTR* surfaces ) {
10453   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10454   TRACE("(%d, %p)\n", numSurfaces, surfaces );
10455   funcs->ext.p_glVDPAUMapSurfacesNV( numSurfaces, surfaces );
10456 }
10457
10458 static INT_PTR WINAPI wine_glVDPAURegisterOutputSurfaceNV( GLvoid* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint* textureNames ) {
10459   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10460   TRACE("(%p, %d, %d, %p)\n", vdpSurface, target, numTextureNames, textureNames );
10461   return funcs->ext.p_glVDPAURegisterOutputSurfaceNV( vdpSurface, target, numTextureNames, textureNames );
10462 }
10463
10464 static INT_PTR WINAPI wine_glVDPAURegisterVideoSurfaceNV( GLvoid* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint* textureNames ) {
10465   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10466   TRACE("(%p, %d, %d, %p)\n", vdpSurface, target, numTextureNames, textureNames );
10467   return funcs->ext.p_glVDPAURegisterVideoSurfaceNV( vdpSurface, target, numTextureNames, textureNames );
10468 }
10469
10470 static void WINAPI wine_glVDPAUSurfaceAccessNV( INT_PTR surface, GLenum access ) {
10471   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10472   TRACE("(%ld, %d)\n", surface, access );
10473   funcs->ext.p_glVDPAUSurfaceAccessNV( surface, access );
10474 }
10475
10476 static void WINAPI wine_glVDPAUUnmapSurfacesNV( GLsizei numSurface, const INT_PTR* surfaces ) {
10477   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10478   TRACE("(%d, %p)\n", numSurface, surfaces );
10479   funcs->ext.p_glVDPAUUnmapSurfacesNV( numSurface, surfaces );
10480 }
10481
10482 static void WINAPI wine_glVDPAUUnregisterSurfaceNV( INT_PTR surface ) {
10483   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10484   TRACE("(%ld)\n", surface );
10485   funcs->ext.p_glVDPAUUnregisterSurfaceNV( surface );
10486 }
10487
10488 static void WINAPI wine_glValidateProgram( GLuint program ) {
10489   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10490   TRACE("(%d)\n", program );
10491   funcs->ext.p_glValidateProgram( program );
10492 }
10493
10494 static void WINAPI wine_glValidateProgramARB( unsigned int programObj ) {
10495   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10496   TRACE("(%d)\n", programObj );
10497   funcs->ext.p_glValidateProgramARB( programObj );
10498 }
10499
10500 static void WINAPI wine_glValidateProgramPipeline( GLuint pipeline ) {
10501   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10502   TRACE("(%d)\n", pipeline );
10503   funcs->ext.p_glValidateProgramPipeline( pipeline );
10504 }
10505
10506 static void WINAPI wine_glVariantArrayObjectATI( GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset ) {
10507   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10508   TRACE("(%d, %d, %d, %d, %d)\n", id, type, stride, buffer, offset );
10509   funcs->ext.p_glVariantArrayObjectATI( id, type, stride, buffer, offset );
10510 }
10511
10512 static void WINAPI wine_glVariantPointerEXT( GLuint id, GLenum type, GLuint stride, const GLvoid* addr ) {
10513   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10514   TRACE("(%d, %d, %d, %p)\n", id, type, stride, addr );
10515   funcs->ext.p_glVariantPointerEXT( id, type, stride, addr );
10516 }
10517
10518 static void WINAPI wine_glVariantbvEXT( GLuint id, const GLbyte* addr ) {
10519   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10520   TRACE("(%d, %p)\n", id, addr );
10521   funcs->ext.p_glVariantbvEXT( id, addr );
10522 }
10523
10524 static void WINAPI wine_glVariantdvEXT( GLuint id, const GLdouble* addr ) {
10525   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10526   TRACE("(%d, %p)\n", id, addr );
10527   funcs->ext.p_glVariantdvEXT( id, addr );
10528 }
10529
10530 static void WINAPI wine_glVariantfvEXT( GLuint id, const GLfloat* addr ) {
10531   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10532   TRACE("(%d, %p)\n", id, addr );
10533   funcs->ext.p_glVariantfvEXT( id, addr );
10534 }
10535
10536 static void WINAPI wine_glVariantivEXT( GLuint id, const GLint* addr ) {
10537   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10538   TRACE("(%d, %p)\n", id, addr );
10539   funcs->ext.p_glVariantivEXT( id, addr );
10540 }
10541
10542 static void WINAPI wine_glVariantsvEXT( GLuint id, const GLshort* addr ) {
10543   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10544   TRACE("(%d, %p)\n", id, addr );
10545   funcs->ext.p_glVariantsvEXT( id, addr );
10546 }
10547
10548 static void WINAPI wine_glVariantubvEXT( GLuint id, const GLubyte* addr ) {
10549   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10550   TRACE("(%d, %p)\n", id, addr );
10551   funcs->ext.p_glVariantubvEXT( id, addr );
10552 }
10553
10554 static void WINAPI wine_glVariantuivEXT( GLuint id, const GLuint* addr ) {
10555   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10556   TRACE("(%d, %p)\n", id, addr );
10557   funcs->ext.p_glVariantuivEXT( id, addr );
10558 }
10559
10560 static void WINAPI wine_glVariantusvEXT( GLuint id, const GLushort* addr ) {
10561   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10562   TRACE("(%d, %p)\n", id, addr );
10563   funcs->ext.p_glVariantusvEXT( id, addr );
10564 }
10565
10566 static void WINAPI wine_glVertex2hNV( unsigned short x, unsigned short y ) {
10567   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10568   TRACE("(%d, %d)\n", x, y );
10569   funcs->ext.p_glVertex2hNV( x, y );
10570 }
10571
10572 static void WINAPI wine_glVertex2hvNV( const unsigned short* v ) {
10573   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10574   TRACE("(%p)\n", v );
10575   funcs->ext.p_glVertex2hvNV( v );
10576 }
10577
10578 static void WINAPI wine_glVertex3hNV( unsigned short x, unsigned short y, unsigned short z ) {
10579   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10580   TRACE("(%d, %d, %d)\n", x, y, z );
10581   funcs->ext.p_glVertex3hNV( x, y, z );
10582 }
10583
10584 static void WINAPI wine_glVertex3hvNV( const unsigned short* v ) {
10585   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10586   TRACE("(%p)\n", v );
10587   funcs->ext.p_glVertex3hvNV( v );
10588 }
10589
10590 static void WINAPI wine_glVertex4hNV( unsigned short x, unsigned short y, unsigned short z, unsigned short w ) {
10591   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10592   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
10593   funcs->ext.p_glVertex4hNV( x, y, z, w );
10594 }
10595
10596 static void WINAPI wine_glVertex4hvNV( const unsigned short* v ) {
10597   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10598   TRACE("(%p)\n", v );
10599   funcs->ext.p_glVertex4hvNV( v );
10600 }
10601
10602 static void WINAPI wine_glVertexArrayBindVertexBufferEXT( GLuint vaobj, GLuint bindingindex, GLuint buffer, INT_PTR offset, GLsizei stride ) {
10603   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10604   TRACE("(%d, %d, %d, %ld, %d)\n", vaobj, bindingindex, buffer, offset, stride );
10605   funcs->ext.p_glVertexArrayBindVertexBufferEXT( vaobj, bindingindex, buffer, offset, stride );
10606 }
10607
10608 static void WINAPI wine_glVertexArrayParameteriAPPLE( GLenum pname, GLint param ) {
10609   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10610   TRACE("(%d, %d)\n", pname, param );
10611   funcs->ext.p_glVertexArrayParameteriAPPLE( pname, param );
10612 }
10613
10614 static void WINAPI wine_glVertexArrayRangeAPPLE( GLsizei length, GLvoid* pointer ) {
10615   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10616   TRACE("(%d, %p)\n", length, pointer );
10617   funcs->ext.p_glVertexArrayRangeAPPLE( length, pointer );
10618 }
10619
10620 static void WINAPI wine_glVertexArrayRangeNV( GLsizei length, const GLvoid* pointer ) {
10621   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10622   TRACE("(%d, %p)\n", length, pointer );
10623   funcs->ext.p_glVertexArrayRangeNV( length, pointer );
10624 }
10625
10626 static void WINAPI wine_glVertexArrayVertexAttribBindingEXT( GLuint vaobj, GLuint attribindex, GLuint bindingindex ) {
10627   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10628   TRACE("(%d, %d, %d)\n", vaobj, attribindex, bindingindex );
10629   funcs->ext.p_glVertexArrayVertexAttribBindingEXT( vaobj, attribindex, bindingindex );
10630 }
10631
10632 static void WINAPI wine_glVertexArrayVertexAttribFormatEXT( GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset ) {
10633   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10634   TRACE("(%d, %d, %d, %d, %d, %d)\n", vaobj, attribindex, size, type, normalized, relativeoffset );
10635   funcs->ext.p_glVertexArrayVertexAttribFormatEXT( vaobj, attribindex, size, type, normalized, relativeoffset );
10636 }
10637
10638 static void WINAPI wine_glVertexArrayVertexAttribIFormatEXT( GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset ) {
10639   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10640   TRACE("(%d, %d, %d, %d, %d)\n", vaobj, attribindex, size, type, relativeoffset );
10641   funcs->ext.p_glVertexArrayVertexAttribIFormatEXT( vaobj, attribindex, size, type, relativeoffset );
10642 }
10643
10644 static void WINAPI wine_glVertexArrayVertexAttribLFormatEXT( GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset ) {
10645   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10646   TRACE("(%d, %d, %d, %d, %d)\n", vaobj, attribindex, size, type, relativeoffset );
10647   funcs->ext.p_glVertexArrayVertexAttribLFormatEXT( vaobj, attribindex, size, type, relativeoffset );
10648 }
10649
10650 static void WINAPI wine_glVertexArrayVertexAttribLOffsetEXT( GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, INT_PTR offset ) {
10651   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10652   TRACE("(%d, %d, %d, %d, %d, %d, %ld)\n", vaobj, buffer, index, size, type, stride, offset );
10653   funcs->ext.p_glVertexArrayVertexAttribLOffsetEXT( vaobj, buffer, index, size, type, stride, offset );
10654 }
10655
10656 static void WINAPI wine_glVertexArrayVertexBindingDivisorEXT( GLuint vaobj, GLuint bindingindex, GLuint divisor ) {
10657   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10658   TRACE("(%d, %d, %d)\n", vaobj, bindingindex, divisor );
10659   funcs->ext.p_glVertexArrayVertexBindingDivisorEXT( vaobj, bindingindex, divisor );
10660 }
10661
10662 static void WINAPI wine_glVertexAttrib1d( GLuint index, GLdouble x ) {
10663   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10664   TRACE("(%d, %f)\n", index, x );
10665   funcs->ext.p_glVertexAttrib1d( index, x );
10666 }
10667
10668 static void WINAPI wine_glVertexAttrib1dARB( GLuint index, GLdouble x ) {
10669   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10670   TRACE("(%d, %f)\n", index, x );
10671   funcs->ext.p_glVertexAttrib1dARB( index, x );
10672 }
10673
10674 static void WINAPI wine_glVertexAttrib1dNV( GLuint index, GLdouble x ) {
10675   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10676   TRACE("(%d, %f)\n", index, x );
10677   funcs->ext.p_glVertexAttrib1dNV( index, x );
10678 }
10679
10680 static void WINAPI wine_glVertexAttrib1dv( GLuint index, const GLdouble* v ) {
10681   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10682   TRACE("(%d, %p)\n", index, v );
10683   funcs->ext.p_glVertexAttrib1dv( index, v );
10684 }
10685
10686 static void WINAPI wine_glVertexAttrib1dvARB( GLuint index, const GLdouble* v ) {
10687   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10688   TRACE("(%d, %p)\n", index, v );
10689   funcs->ext.p_glVertexAttrib1dvARB( index, v );
10690 }
10691
10692 static void WINAPI wine_glVertexAttrib1dvNV( GLuint index, const GLdouble* v ) {
10693   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10694   TRACE("(%d, %p)\n", index, v );
10695   funcs->ext.p_glVertexAttrib1dvNV( index, v );
10696 }
10697
10698 static void WINAPI wine_glVertexAttrib1f( GLuint index, GLfloat x ) {
10699   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10700   TRACE("(%d, %f)\n", index, x );
10701   funcs->ext.p_glVertexAttrib1f( index, x );
10702 }
10703
10704 static void WINAPI wine_glVertexAttrib1fARB( GLuint index, GLfloat x ) {
10705   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10706   TRACE("(%d, %f)\n", index, x );
10707   funcs->ext.p_glVertexAttrib1fARB( index, x );
10708 }
10709
10710 static void WINAPI wine_glVertexAttrib1fNV( GLuint index, GLfloat x ) {
10711   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10712   TRACE("(%d, %f)\n", index, x );
10713   funcs->ext.p_glVertexAttrib1fNV( index, x );
10714 }
10715
10716 static void WINAPI wine_glVertexAttrib1fv( GLuint index, const GLfloat* v ) {
10717   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10718   TRACE("(%d, %p)\n", index, v );
10719   funcs->ext.p_glVertexAttrib1fv( index, v );
10720 }
10721
10722 static void WINAPI wine_glVertexAttrib1fvARB( GLuint index, const GLfloat* v ) {
10723   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10724   TRACE("(%d, %p)\n", index, v );
10725   funcs->ext.p_glVertexAttrib1fvARB( index, v );
10726 }
10727
10728 static void WINAPI wine_glVertexAttrib1fvNV( GLuint index, const GLfloat* v ) {
10729   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10730   TRACE("(%d, %p)\n", index, v );
10731   funcs->ext.p_glVertexAttrib1fvNV( index, v );
10732 }
10733
10734 static void WINAPI wine_glVertexAttrib1hNV( GLuint index, unsigned short x ) {
10735   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10736   TRACE("(%d, %d)\n", index, x );
10737   funcs->ext.p_glVertexAttrib1hNV( index, x );
10738 }
10739
10740 static void WINAPI wine_glVertexAttrib1hvNV( GLuint index, const unsigned short* v ) {
10741   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10742   TRACE("(%d, %p)\n", index, v );
10743   funcs->ext.p_glVertexAttrib1hvNV( index, v );
10744 }
10745
10746 static void WINAPI wine_glVertexAttrib1s( GLuint index, GLshort x ) {
10747   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10748   TRACE("(%d, %d)\n", index, x );
10749   funcs->ext.p_glVertexAttrib1s( index, x );
10750 }
10751
10752 static void WINAPI wine_glVertexAttrib1sARB( GLuint index, GLshort x ) {
10753   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10754   TRACE("(%d, %d)\n", index, x );
10755   funcs->ext.p_glVertexAttrib1sARB( index, x );
10756 }
10757
10758 static void WINAPI wine_glVertexAttrib1sNV( GLuint index, GLshort x ) {
10759   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10760   TRACE("(%d, %d)\n", index, x );
10761   funcs->ext.p_glVertexAttrib1sNV( index, x );
10762 }
10763
10764 static void WINAPI wine_glVertexAttrib1sv( GLuint index, const GLshort* v ) {
10765   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10766   TRACE("(%d, %p)\n", index, v );
10767   funcs->ext.p_glVertexAttrib1sv( index, v );
10768 }
10769
10770 static void WINAPI wine_glVertexAttrib1svARB( GLuint index, const GLshort* v ) {
10771   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10772   TRACE("(%d, %p)\n", index, v );
10773   funcs->ext.p_glVertexAttrib1svARB( index, v );
10774 }
10775
10776 static void WINAPI wine_glVertexAttrib1svNV( GLuint index, const GLshort* v ) {
10777   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10778   TRACE("(%d, %p)\n", index, v );
10779   funcs->ext.p_glVertexAttrib1svNV( index, v );
10780 }
10781
10782 static void WINAPI wine_glVertexAttrib2d( GLuint index, GLdouble x, GLdouble y ) {
10783   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10784   TRACE("(%d, %f, %f)\n", index, x, y );
10785   funcs->ext.p_glVertexAttrib2d( index, x, y );
10786 }
10787
10788 static void WINAPI wine_glVertexAttrib2dARB( GLuint index, GLdouble x, GLdouble y ) {
10789   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10790   TRACE("(%d, %f, %f)\n", index, x, y );
10791   funcs->ext.p_glVertexAttrib2dARB( index, x, y );
10792 }
10793
10794 static void WINAPI wine_glVertexAttrib2dNV( GLuint index, GLdouble x, GLdouble y ) {
10795   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10796   TRACE("(%d, %f, %f)\n", index, x, y );
10797   funcs->ext.p_glVertexAttrib2dNV( index, x, y );
10798 }
10799
10800 static void WINAPI wine_glVertexAttrib2dv( GLuint index, const GLdouble* v ) {
10801   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10802   TRACE("(%d, %p)\n", index, v );
10803   funcs->ext.p_glVertexAttrib2dv( index, v );
10804 }
10805
10806 static void WINAPI wine_glVertexAttrib2dvARB( GLuint index, const GLdouble* v ) {
10807   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10808   TRACE("(%d, %p)\n", index, v );
10809   funcs->ext.p_glVertexAttrib2dvARB( index, v );
10810 }
10811
10812 static void WINAPI wine_glVertexAttrib2dvNV( GLuint index, const GLdouble* v ) {
10813   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10814   TRACE("(%d, %p)\n", index, v );
10815   funcs->ext.p_glVertexAttrib2dvNV( index, v );
10816 }
10817
10818 static void WINAPI wine_glVertexAttrib2f( GLuint index, GLfloat x, GLfloat y ) {
10819   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10820   TRACE("(%d, %f, %f)\n", index, x, y );
10821   funcs->ext.p_glVertexAttrib2f( index, x, y );
10822 }
10823
10824 static void WINAPI wine_glVertexAttrib2fARB( GLuint index, GLfloat x, GLfloat y ) {
10825   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10826   TRACE("(%d, %f, %f)\n", index, x, y );
10827   funcs->ext.p_glVertexAttrib2fARB( index, x, y );
10828 }
10829
10830 static void WINAPI wine_glVertexAttrib2fNV( GLuint index, GLfloat x, GLfloat y ) {
10831   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10832   TRACE("(%d, %f, %f)\n", index, x, y );
10833   funcs->ext.p_glVertexAttrib2fNV( index, x, y );
10834 }
10835
10836 static void WINAPI wine_glVertexAttrib2fv( GLuint index, const GLfloat* v ) {
10837   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10838   TRACE("(%d, %p)\n", index, v );
10839   funcs->ext.p_glVertexAttrib2fv( index, v );
10840 }
10841
10842 static void WINAPI wine_glVertexAttrib2fvARB( GLuint index, const GLfloat* v ) {
10843   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10844   TRACE("(%d, %p)\n", index, v );
10845   funcs->ext.p_glVertexAttrib2fvARB( index, v );
10846 }
10847
10848 static void WINAPI wine_glVertexAttrib2fvNV( GLuint index, const GLfloat* v ) {
10849   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10850   TRACE("(%d, %p)\n", index, v );
10851   funcs->ext.p_glVertexAttrib2fvNV( index, v );
10852 }
10853
10854 static void WINAPI wine_glVertexAttrib2hNV( GLuint index, unsigned short x, unsigned short y ) {
10855   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10856   TRACE("(%d, %d, %d)\n", index, x, y );
10857   funcs->ext.p_glVertexAttrib2hNV( index, x, y );
10858 }
10859
10860 static void WINAPI wine_glVertexAttrib2hvNV( GLuint index, const unsigned short* v ) {
10861   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10862   TRACE("(%d, %p)\n", index, v );
10863   funcs->ext.p_glVertexAttrib2hvNV( index, v );
10864 }
10865
10866 static void WINAPI wine_glVertexAttrib2s( GLuint index, GLshort x, GLshort y ) {
10867   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10868   TRACE("(%d, %d, %d)\n", index, x, y );
10869   funcs->ext.p_glVertexAttrib2s( index, x, y );
10870 }
10871
10872 static void WINAPI wine_glVertexAttrib2sARB( GLuint index, GLshort x, GLshort y ) {
10873   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10874   TRACE("(%d, %d, %d)\n", index, x, y );
10875   funcs->ext.p_glVertexAttrib2sARB( index, x, y );
10876 }
10877
10878 static void WINAPI wine_glVertexAttrib2sNV( GLuint index, GLshort x, GLshort y ) {
10879   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10880   TRACE("(%d, %d, %d)\n", index, x, y );
10881   funcs->ext.p_glVertexAttrib2sNV( index, x, y );
10882 }
10883
10884 static void WINAPI wine_glVertexAttrib2sv( GLuint index, const GLshort* v ) {
10885   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10886   TRACE("(%d, %p)\n", index, v );
10887   funcs->ext.p_glVertexAttrib2sv( index, v );
10888 }
10889
10890 static void WINAPI wine_glVertexAttrib2svARB( GLuint index, const GLshort* v ) {
10891   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10892   TRACE("(%d, %p)\n", index, v );
10893   funcs->ext.p_glVertexAttrib2svARB( index, v );
10894 }
10895
10896 static void WINAPI wine_glVertexAttrib2svNV( GLuint index, const GLshort* v ) {
10897   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10898   TRACE("(%d, %p)\n", index, v );
10899   funcs->ext.p_glVertexAttrib2svNV( index, v );
10900 }
10901
10902 static void WINAPI wine_glVertexAttrib3d( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
10903   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10904   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
10905   funcs->ext.p_glVertexAttrib3d( index, x, y, z );
10906 }
10907
10908 static void WINAPI wine_glVertexAttrib3dARB( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
10909   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10910   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
10911   funcs->ext.p_glVertexAttrib3dARB( index, x, y, z );
10912 }
10913
10914 static void WINAPI wine_glVertexAttrib3dNV( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
10915   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10916   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
10917   funcs->ext.p_glVertexAttrib3dNV( index, x, y, z );
10918 }
10919
10920 static void WINAPI wine_glVertexAttrib3dv( GLuint index, const GLdouble* v ) {
10921   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10922   TRACE("(%d, %p)\n", index, v );
10923   funcs->ext.p_glVertexAttrib3dv( index, v );
10924 }
10925
10926 static void WINAPI wine_glVertexAttrib3dvARB( GLuint index, const GLdouble* v ) {
10927   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10928   TRACE("(%d, %p)\n", index, v );
10929   funcs->ext.p_glVertexAttrib3dvARB( index, v );
10930 }
10931
10932 static void WINAPI wine_glVertexAttrib3dvNV( GLuint index, const GLdouble* v ) {
10933   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10934   TRACE("(%d, %p)\n", index, v );
10935   funcs->ext.p_glVertexAttrib3dvNV( index, v );
10936 }
10937
10938 static void WINAPI wine_glVertexAttrib3f( GLuint index, GLfloat x, GLfloat y, GLfloat z ) {
10939   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10940   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
10941   funcs->ext.p_glVertexAttrib3f( index, x, y, z );
10942 }
10943
10944 static void WINAPI wine_glVertexAttrib3fARB( GLuint index, GLfloat x, GLfloat y, GLfloat z ) {
10945   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10946   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
10947   funcs->ext.p_glVertexAttrib3fARB( index, x, y, z );
10948 }
10949
10950 static void WINAPI wine_glVertexAttrib3fNV( GLuint index, GLfloat x, GLfloat y, GLfloat z ) {
10951   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10952   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
10953   funcs->ext.p_glVertexAttrib3fNV( index, x, y, z );
10954 }
10955
10956 static void WINAPI wine_glVertexAttrib3fv( GLuint index, const GLfloat* v ) {
10957   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10958   TRACE("(%d, %p)\n", index, v );
10959   funcs->ext.p_glVertexAttrib3fv( index, v );
10960 }
10961
10962 static void WINAPI wine_glVertexAttrib3fvARB( GLuint index, const GLfloat* v ) {
10963   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10964   TRACE("(%d, %p)\n", index, v );
10965   funcs->ext.p_glVertexAttrib3fvARB( index, v );
10966 }
10967
10968 static void WINAPI wine_glVertexAttrib3fvNV( GLuint index, const GLfloat* v ) {
10969   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10970   TRACE("(%d, %p)\n", index, v );
10971   funcs->ext.p_glVertexAttrib3fvNV( index, v );
10972 }
10973
10974 static void WINAPI wine_glVertexAttrib3hNV( GLuint index, unsigned short x, unsigned short y, unsigned short z ) {
10975   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10976   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
10977   funcs->ext.p_glVertexAttrib3hNV( index, x, y, z );
10978 }
10979
10980 static void WINAPI wine_glVertexAttrib3hvNV( GLuint index, const unsigned short* v ) {
10981   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10982   TRACE("(%d, %p)\n", index, v );
10983   funcs->ext.p_glVertexAttrib3hvNV( index, v );
10984 }
10985
10986 static void WINAPI wine_glVertexAttrib3s( GLuint index, GLshort x, GLshort y, GLshort z ) {
10987   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10988   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
10989   funcs->ext.p_glVertexAttrib3s( index, x, y, z );
10990 }
10991
10992 static void WINAPI wine_glVertexAttrib3sARB( GLuint index, GLshort x, GLshort y, GLshort z ) {
10993   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
10994   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
10995   funcs->ext.p_glVertexAttrib3sARB( index, x, y, z );
10996 }
10997
10998 static void WINAPI wine_glVertexAttrib3sNV( GLuint index, GLshort x, GLshort y, GLshort z ) {
10999   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11000   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
11001   funcs->ext.p_glVertexAttrib3sNV( index, x, y, z );
11002 }
11003
11004 static void WINAPI wine_glVertexAttrib3sv( GLuint index, const GLshort* v ) {
11005   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11006   TRACE("(%d, %p)\n", index, v );
11007   funcs->ext.p_glVertexAttrib3sv( index, v );
11008 }
11009
11010 static void WINAPI wine_glVertexAttrib3svARB( GLuint index, const GLshort* v ) {
11011   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11012   TRACE("(%d, %p)\n", index, v );
11013   funcs->ext.p_glVertexAttrib3svARB( index, v );
11014 }
11015
11016 static void WINAPI wine_glVertexAttrib3svNV( GLuint index, const GLshort* v ) {
11017   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11018   TRACE("(%d, %p)\n", index, v );
11019   funcs->ext.p_glVertexAttrib3svNV( index, v );
11020 }
11021
11022 static void WINAPI wine_glVertexAttrib4Nbv( GLuint index, const GLbyte* v ) {
11023   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11024   TRACE("(%d, %p)\n", index, v );
11025   funcs->ext.p_glVertexAttrib4Nbv( index, v );
11026 }
11027
11028 static void WINAPI wine_glVertexAttrib4NbvARB( GLuint index, const GLbyte* v ) {
11029   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11030   TRACE("(%d, %p)\n", index, v );
11031   funcs->ext.p_glVertexAttrib4NbvARB( index, v );
11032 }
11033
11034 static void WINAPI wine_glVertexAttrib4Niv( GLuint index, const GLint* v ) {
11035   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11036   TRACE("(%d, %p)\n", index, v );
11037   funcs->ext.p_glVertexAttrib4Niv( index, v );
11038 }
11039
11040 static void WINAPI wine_glVertexAttrib4NivARB( GLuint index, const GLint* v ) {
11041   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11042   TRACE("(%d, %p)\n", index, v );
11043   funcs->ext.p_glVertexAttrib4NivARB( index, v );
11044 }
11045
11046 static void WINAPI wine_glVertexAttrib4Nsv( GLuint index, const GLshort* v ) {
11047   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11048   TRACE("(%d, %p)\n", index, v );
11049   funcs->ext.p_glVertexAttrib4Nsv( index, v );
11050 }
11051
11052 static void WINAPI wine_glVertexAttrib4NsvARB( GLuint index, const GLshort* v ) {
11053   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11054   TRACE("(%d, %p)\n", index, v );
11055   funcs->ext.p_glVertexAttrib4NsvARB( index, v );
11056 }
11057
11058 static void WINAPI wine_glVertexAttrib4Nub( GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w ) {
11059   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11060   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11061   funcs->ext.p_glVertexAttrib4Nub( index, x, y, z, w );
11062 }
11063
11064 static void WINAPI wine_glVertexAttrib4NubARB( GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w ) {
11065   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11066   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11067   funcs->ext.p_glVertexAttrib4NubARB( index, x, y, z, w );
11068 }
11069
11070 static void WINAPI wine_glVertexAttrib4Nubv( GLuint index, const GLubyte* v ) {
11071   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11072   TRACE("(%d, %p)\n", index, v );
11073   funcs->ext.p_glVertexAttrib4Nubv( index, v );
11074 }
11075
11076 static void WINAPI wine_glVertexAttrib4NubvARB( GLuint index, const GLubyte* v ) {
11077   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11078   TRACE("(%d, %p)\n", index, v );
11079   funcs->ext.p_glVertexAttrib4NubvARB( index, v );
11080 }
11081
11082 static void WINAPI wine_glVertexAttrib4Nuiv( GLuint index, const GLuint* v ) {
11083   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11084   TRACE("(%d, %p)\n", index, v );
11085   funcs->ext.p_glVertexAttrib4Nuiv( index, v );
11086 }
11087
11088 static void WINAPI wine_glVertexAttrib4NuivARB( GLuint index, const GLuint* v ) {
11089   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11090   TRACE("(%d, %p)\n", index, v );
11091   funcs->ext.p_glVertexAttrib4NuivARB( index, v );
11092 }
11093
11094 static void WINAPI wine_glVertexAttrib4Nusv( GLuint index, const GLushort* v ) {
11095   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11096   TRACE("(%d, %p)\n", index, v );
11097   funcs->ext.p_glVertexAttrib4Nusv( index, v );
11098 }
11099
11100 static void WINAPI wine_glVertexAttrib4NusvARB( GLuint index, const GLushort* v ) {
11101   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11102   TRACE("(%d, %p)\n", index, v );
11103   funcs->ext.p_glVertexAttrib4NusvARB( index, v );
11104 }
11105
11106 static void WINAPI wine_glVertexAttrib4bv( GLuint index, const GLbyte* v ) {
11107   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11108   TRACE("(%d, %p)\n", index, v );
11109   funcs->ext.p_glVertexAttrib4bv( index, v );
11110 }
11111
11112 static void WINAPI wine_glVertexAttrib4bvARB( GLuint index, const GLbyte* v ) {
11113   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11114   TRACE("(%d, %p)\n", index, v );
11115   funcs->ext.p_glVertexAttrib4bvARB( index, v );
11116 }
11117
11118 static void WINAPI wine_glVertexAttrib4d( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11119   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11120   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
11121   funcs->ext.p_glVertexAttrib4d( index, x, y, z, w );
11122 }
11123
11124 static void WINAPI wine_glVertexAttrib4dARB( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11125   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11126   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
11127   funcs->ext.p_glVertexAttrib4dARB( index, x, y, z, w );
11128 }
11129
11130 static void WINAPI wine_glVertexAttrib4dNV( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11131   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11132   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
11133   funcs->ext.p_glVertexAttrib4dNV( index, x, y, z, w );
11134 }
11135
11136 static void WINAPI wine_glVertexAttrib4dv( GLuint index, const GLdouble* v ) {
11137   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11138   TRACE("(%d, %p)\n", index, v );
11139   funcs->ext.p_glVertexAttrib4dv( index, v );
11140 }
11141
11142 static void WINAPI wine_glVertexAttrib4dvARB( GLuint index, const GLdouble* v ) {
11143   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11144   TRACE("(%d, %p)\n", index, v );
11145   funcs->ext.p_glVertexAttrib4dvARB( index, v );
11146 }
11147
11148 static void WINAPI wine_glVertexAttrib4dvNV( GLuint index, const GLdouble* v ) {
11149   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11150   TRACE("(%d, %p)\n", index, v );
11151   funcs->ext.p_glVertexAttrib4dvNV( index, v );
11152 }
11153
11154 static void WINAPI wine_glVertexAttrib4f( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
11155   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11156   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
11157   funcs->ext.p_glVertexAttrib4f( index, x, y, z, w );
11158 }
11159
11160 static void WINAPI wine_glVertexAttrib4fARB( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
11161   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11162   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
11163   funcs->ext.p_glVertexAttrib4fARB( index, x, y, z, w );
11164 }
11165
11166 static void WINAPI wine_glVertexAttrib4fNV( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
11167   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11168   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
11169   funcs->ext.p_glVertexAttrib4fNV( index, x, y, z, w );
11170 }
11171
11172 static void WINAPI wine_glVertexAttrib4fv( GLuint index, const GLfloat* v ) {
11173   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11174   TRACE("(%d, %p)\n", index, v );
11175   funcs->ext.p_glVertexAttrib4fv( index, v );
11176 }
11177
11178 static void WINAPI wine_glVertexAttrib4fvARB( GLuint index, const GLfloat* v ) {
11179   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11180   TRACE("(%d, %p)\n", index, v );
11181   funcs->ext.p_glVertexAttrib4fvARB( index, v );
11182 }
11183
11184 static void WINAPI wine_glVertexAttrib4fvNV( GLuint index, const GLfloat* v ) {
11185   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11186   TRACE("(%d, %p)\n", index, v );
11187   funcs->ext.p_glVertexAttrib4fvNV( index, v );
11188 }
11189
11190 static void WINAPI wine_glVertexAttrib4hNV( GLuint index, unsigned short x, unsigned short y, unsigned short z, unsigned short w ) {
11191   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11192   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11193   funcs->ext.p_glVertexAttrib4hNV( index, x, y, z, w );
11194 }
11195
11196 static void WINAPI wine_glVertexAttrib4hvNV( GLuint index, const unsigned short* v ) {
11197   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11198   TRACE("(%d, %p)\n", index, v );
11199   funcs->ext.p_glVertexAttrib4hvNV( index, v );
11200 }
11201
11202 static void WINAPI wine_glVertexAttrib4iv( GLuint index, const GLint* v ) {
11203   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11204   TRACE("(%d, %p)\n", index, v );
11205   funcs->ext.p_glVertexAttrib4iv( index, v );
11206 }
11207
11208 static void WINAPI wine_glVertexAttrib4ivARB( GLuint index, const GLint* v ) {
11209   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11210   TRACE("(%d, %p)\n", index, v );
11211   funcs->ext.p_glVertexAttrib4ivARB( index, v );
11212 }
11213
11214 static void WINAPI wine_glVertexAttrib4s( GLuint index, GLshort x, GLshort y, GLshort z, GLshort w ) {
11215   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11216   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11217   funcs->ext.p_glVertexAttrib4s( index, x, y, z, w );
11218 }
11219
11220 static void WINAPI wine_glVertexAttrib4sARB( GLuint index, GLshort x, GLshort y, GLshort z, GLshort w ) {
11221   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11222   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11223   funcs->ext.p_glVertexAttrib4sARB( index, x, y, z, w );
11224 }
11225
11226 static void WINAPI wine_glVertexAttrib4sNV( GLuint index, GLshort x, GLshort y, GLshort z, GLshort w ) {
11227   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11228   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11229   funcs->ext.p_glVertexAttrib4sNV( index, x, y, z, w );
11230 }
11231
11232 static void WINAPI wine_glVertexAttrib4sv( GLuint index, const GLshort* v ) {
11233   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11234   TRACE("(%d, %p)\n", index, v );
11235   funcs->ext.p_glVertexAttrib4sv( index, v );
11236 }
11237
11238 static void WINAPI wine_glVertexAttrib4svARB( GLuint index, const GLshort* v ) {
11239   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11240   TRACE("(%d, %p)\n", index, v );
11241   funcs->ext.p_glVertexAttrib4svARB( index, v );
11242 }
11243
11244 static void WINAPI wine_glVertexAttrib4svNV( GLuint index, const GLshort* v ) {
11245   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11246   TRACE("(%d, %p)\n", index, v );
11247   funcs->ext.p_glVertexAttrib4svNV( index, v );
11248 }
11249
11250 static void WINAPI wine_glVertexAttrib4ubNV( GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w ) {
11251   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11252   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11253   funcs->ext.p_glVertexAttrib4ubNV( index, x, y, z, w );
11254 }
11255
11256 static void WINAPI wine_glVertexAttrib4ubv( GLuint index, const GLubyte* v ) {
11257   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11258   TRACE("(%d, %p)\n", index, v );
11259   funcs->ext.p_glVertexAttrib4ubv( index, v );
11260 }
11261
11262 static void WINAPI wine_glVertexAttrib4ubvARB( GLuint index, const GLubyte* v ) {
11263   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11264   TRACE("(%d, %p)\n", index, v );
11265   funcs->ext.p_glVertexAttrib4ubvARB( index, v );
11266 }
11267
11268 static void WINAPI wine_glVertexAttrib4ubvNV( GLuint index, const GLubyte* v ) {
11269   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11270   TRACE("(%d, %p)\n", index, v );
11271   funcs->ext.p_glVertexAttrib4ubvNV( index, v );
11272 }
11273
11274 static void WINAPI wine_glVertexAttrib4uiv( GLuint index, const GLuint* v ) {
11275   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11276   TRACE("(%d, %p)\n", index, v );
11277   funcs->ext.p_glVertexAttrib4uiv( index, v );
11278 }
11279
11280 static void WINAPI wine_glVertexAttrib4uivARB( GLuint index, const GLuint* v ) {
11281   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11282   TRACE("(%d, %p)\n", index, v );
11283   funcs->ext.p_glVertexAttrib4uivARB( index, v );
11284 }
11285
11286 static void WINAPI wine_glVertexAttrib4usv( GLuint index, const GLushort* v ) {
11287   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11288   TRACE("(%d, %p)\n", index, v );
11289   funcs->ext.p_glVertexAttrib4usv( index, v );
11290 }
11291
11292 static void WINAPI wine_glVertexAttrib4usvARB( GLuint index, const GLushort* v ) {
11293   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11294   TRACE("(%d, %p)\n", index, v );
11295   funcs->ext.p_glVertexAttrib4usvARB( index, v );
11296 }
11297
11298 static void WINAPI wine_glVertexAttribArrayObjectATI( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset ) {
11299   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11300   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", index, size, type, normalized, stride, buffer, offset );
11301   funcs->ext.p_glVertexAttribArrayObjectATI( index, size, type, normalized, stride, buffer, offset );
11302 }
11303
11304 static void WINAPI wine_glVertexAttribBinding( GLuint attribindex, GLuint bindingindex ) {
11305   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11306   TRACE("(%d, %d)\n", attribindex, bindingindex );
11307   funcs->ext.p_glVertexAttribBinding( attribindex, bindingindex );
11308 }
11309
11310 static void WINAPI wine_glVertexAttribDivisor( GLuint index, GLuint divisor ) {
11311   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11312   TRACE("(%d, %d)\n", index, divisor );
11313   funcs->ext.p_glVertexAttribDivisor( index, divisor );
11314 }
11315
11316 static void WINAPI wine_glVertexAttribDivisorARB( GLuint index, GLuint divisor ) {
11317   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11318   TRACE("(%d, %d)\n", index, divisor );
11319   funcs->ext.p_glVertexAttribDivisorARB( index, divisor );
11320 }
11321
11322 static void WINAPI wine_glVertexAttribFormat( GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset ) {
11323   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11324   TRACE("(%d, %d, %d, %d, %d)\n", attribindex, size, type, normalized, relativeoffset );
11325   funcs->ext.p_glVertexAttribFormat( attribindex, size, type, normalized, relativeoffset );
11326 }
11327
11328 static void WINAPI wine_glVertexAttribFormatNV( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride ) {
11329   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11330   TRACE("(%d, %d, %d, %d, %d)\n", index, size, type, normalized, stride );
11331   funcs->ext.p_glVertexAttribFormatNV( index, size, type, normalized, stride );
11332 }
11333
11334 static void WINAPI wine_glVertexAttribI1i( GLuint index, GLint x ) {
11335   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11336   TRACE("(%d, %d)\n", index, x );
11337   funcs->ext.p_glVertexAttribI1i( index, x );
11338 }
11339
11340 static void WINAPI wine_glVertexAttribI1iEXT( GLuint index, GLint x ) {
11341   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11342   TRACE("(%d, %d)\n", index, x );
11343   funcs->ext.p_glVertexAttribI1iEXT( index, x );
11344 }
11345
11346 static void WINAPI wine_glVertexAttribI1iv( GLuint index, const GLint* v ) {
11347   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11348   TRACE("(%d, %p)\n", index, v );
11349   funcs->ext.p_glVertexAttribI1iv( index, v );
11350 }
11351
11352 static void WINAPI wine_glVertexAttribI1ivEXT( GLuint index, const GLint* v ) {
11353   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11354   TRACE("(%d, %p)\n", index, v );
11355   funcs->ext.p_glVertexAttribI1ivEXT( index, v );
11356 }
11357
11358 static void WINAPI wine_glVertexAttribI1ui( GLuint index, GLuint x ) {
11359   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11360   TRACE("(%d, %d)\n", index, x );
11361   funcs->ext.p_glVertexAttribI1ui( index, x );
11362 }
11363
11364 static void WINAPI wine_glVertexAttribI1uiEXT( GLuint index, GLuint x ) {
11365   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11366   TRACE("(%d, %d)\n", index, x );
11367   funcs->ext.p_glVertexAttribI1uiEXT( index, x );
11368 }
11369
11370 static void WINAPI wine_glVertexAttribI1uiv( GLuint index, const GLuint* v ) {
11371   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11372   TRACE("(%d, %p)\n", index, v );
11373   funcs->ext.p_glVertexAttribI1uiv( index, v );
11374 }
11375
11376 static void WINAPI wine_glVertexAttribI1uivEXT( GLuint index, const GLuint* v ) {
11377   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11378   TRACE("(%d, %p)\n", index, v );
11379   funcs->ext.p_glVertexAttribI1uivEXT( index, v );
11380 }
11381
11382 static void WINAPI wine_glVertexAttribI2i( GLuint index, GLint x, GLint y ) {
11383   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11384   TRACE("(%d, %d, %d)\n", index, x, y );
11385   funcs->ext.p_glVertexAttribI2i( index, x, y );
11386 }
11387
11388 static void WINAPI wine_glVertexAttribI2iEXT( GLuint index, GLint x, GLint y ) {
11389   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11390   TRACE("(%d, %d, %d)\n", index, x, y );
11391   funcs->ext.p_glVertexAttribI2iEXT( index, x, y );
11392 }
11393
11394 static void WINAPI wine_glVertexAttribI2iv( GLuint index, const GLint* v ) {
11395   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11396   TRACE("(%d, %p)\n", index, v );
11397   funcs->ext.p_glVertexAttribI2iv( index, v );
11398 }
11399
11400 static void WINAPI wine_glVertexAttribI2ivEXT( GLuint index, const GLint* v ) {
11401   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11402   TRACE("(%d, %p)\n", index, v );
11403   funcs->ext.p_glVertexAttribI2ivEXT( index, v );
11404 }
11405
11406 static void WINAPI wine_glVertexAttribI2ui( GLuint index, GLuint x, GLuint y ) {
11407   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11408   TRACE("(%d, %d, %d)\n", index, x, y );
11409   funcs->ext.p_glVertexAttribI2ui( index, x, y );
11410 }
11411
11412 static void WINAPI wine_glVertexAttribI2uiEXT( GLuint index, GLuint x, GLuint y ) {
11413   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11414   TRACE("(%d, %d, %d)\n", index, x, y );
11415   funcs->ext.p_glVertexAttribI2uiEXT( index, x, y );
11416 }
11417
11418 static void WINAPI wine_glVertexAttribI2uiv( GLuint index, const GLuint* v ) {
11419   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11420   TRACE("(%d, %p)\n", index, v );
11421   funcs->ext.p_glVertexAttribI2uiv( index, v );
11422 }
11423
11424 static void WINAPI wine_glVertexAttribI2uivEXT( GLuint index, const GLuint* v ) {
11425   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11426   TRACE("(%d, %p)\n", index, v );
11427   funcs->ext.p_glVertexAttribI2uivEXT( index, v );
11428 }
11429
11430 static void WINAPI wine_glVertexAttribI3i( GLuint index, GLint x, GLint y, GLint z ) {
11431   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11432   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
11433   funcs->ext.p_glVertexAttribI3i( index, x, y, z );
11434 }
11435
11436 static void WINAPI wine_glVertexAttribI3iEXT( GLuint index, GLint x, GLint y, GLint z ) {
11437   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11438   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
11439   funcs->ext.p_glVertexAttribI3iEXT( index, x, y, z );
11440 }
11441
11442 static void WINAPI wine_glVertexAttribI3iv( GLuint index, const GLint* v ) {
11443   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11444   TRACE("(%d, %p)\n", index, v );
11445   funcs->ext.p_glVertexAttribI3iv( index, v );
11446 }
11447
11448 static void WINAPI wine_glVertexAttribI3ivEXT( GLuint index, const GLint* v ) {
11449   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11450   TRACE("(%d, %p)\n", index, v );
11451   funcs->ext.p_glVertexAttribI3ivEXT( index, v );
11452 }
11453
11454 static void WINAPI wine_glVertexAttribI3ui( GLuint index, GLuint x, GLuint y, GLuint z ) {
11455   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11456   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
11457   funcs->ext.p_glVertexAttribI3ui( index, x, y, z );
11458 }
11459
11460 static void WINAPI wine_glVertexAttribI3uiEXT( GLuint index, GLuint x, GLuint y, GLuint z ) {
11461   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11462   TRACE("(%d, %d, %d, %d)\n", index, x, y, z );
11463   funcs->ext.p_glVertexAttribI3uiEXT( index, x, y, z );
11464 }
11465
11466 static void WINAPI wine_glVertexAttribI3uiv( GLuint index, const GLuint* v ) {
11467   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11468   TRACE("(%d, %p)\n", index, v );
11469   funcs->ext.p_glVertexAttribI3uiv( index, v );
11470 }
11471
11472 static void WINAPI wine_glVertexAttribI3uivEXT( GLuint index, const GLuint* v ) {
11473   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11474   TRACE("(%d, %p)\n", index, v );
11475   funcs->ext.p_glVertexAttribI3uivEXT( index, v );
11476 }
11477
11478 static void WINAPI wine_glVertexAttribI4bv( GLuint index, const GLbyte* v ) {
11479   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11480   TRACE("(%d, %p)\n", index, v );
11481   funcs->ext.p_glVertexAttribI4bv( index, v );
11482 }
11483
11484 static void WINAPI wine_glVertexAttribI4bvEXT( GLuint index, const GLbyte* v ) {
11485   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11486   TRACE("(%d, %p)\n", index, v );
11487   funcs->ext.p_glVertexAttribI4bvEXT( index, v );
11488 }
11489
11490 static void WINAPI wine_glVertexAttribI4i( GLuint index, GLint x, GLint y, GLint z, GLint w ) {
11491   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11492   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11493   funcs->ext.p_glVertexAttribI4i( index, x, y, z, w );
11494 }
11495
11496 static void WINAPI wine_glVertexAttribI4iEXT( GLuint index, GLint x, GLint y, GLint z, GLint w ) {
11497   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11498   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11499   funcs->ext.p_glVertexAttribI4iEXT( index, x, y, z, w );
11500 }
11501
11502 static void WINAPI wine_glVertexAttribI4iv( GLuint index, const GLint* v ) {
11503   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11504   TRACE("(%d, %p)\n", index, v );
11505   funcs->ext.p_glVertexAttribI4iv( index, v );
11506 }
11507
11508 static void WINAPI wine_glVertexAttribI4ivEXT( GLuint index, const GLint* v ) {
11509   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11510   TRACE("(%d, %p)\n", index, v );
11511   funcs->ext.p_glVertexAttribI4ivEXT( index, v );
11512 }
11513
11514 static void WINAPI wine_glVertexAttribI4sv( GLuint index, const GLshort* v ) {
11515   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11516   TRACE("(%d, %p)\n", index, v );
11517   funcs->ext.p_glVertexAttribI4sv( index, v );
11518 }
11519
11520 static void WINAPI wine_glVertexAttribI4svEXT( GLuint index, const GLshort* v ) {
11521   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11522   TRACE("(%d, %p)\n", index, v );
11523   funcs->ext.p_glVertexAttribI4svEXT( index, v );
11524 }
11525
11526 static void WINAPI wine_glVertexAttribI4ubv( GLuint index, const GLubyte* v ) {
11527   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11528   TRACE("(%d, %p)\n", index, v );
11529   funcs->ext.p_glVertexAttribI4ubv( index, v );
11530 }
11531
11532 static void WINAPI wine_glVertexAttribI4ubvEXT( GLuint index, const GLubyte* v ) {
11533   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11534   TRACE("(%d, %p)\n", index, v );
11535   funcs->ext.p_glVertexAttribI4ubvEXT( index, v );
11536 }
11537
11538 static void WINAPI wine_glVertexAttribI4ui( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
11539   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11540   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11541   funcs->ext.p_glVertexAttribI4ui( index, x, y, z, w );
11542 }
11543
11544 static void WINAPI wine_glVertexAttribI4uiEXT( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) {
11545   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11546   TRACE("(%d, %d, %d, %d, %d)\n", index, x, y, z, w );
11547   funcs->ext.p_glVertexAttribI4uiEXT( index, x, y, z, w );
11548 }
11549
11550 static void WINAPI wine_glVertexAttribI4uiv( GLuint index, const GLuint* v ) {
11551   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11552   TRACE("(%d, %p)\n", index, v );
11553   funcs->ext.p_glVertexAttribI4uiv( index, v );
11554 }
11555
11556 static void WINAPI wine_glVertexAttribI4uivEXT( GLuint index, const GLuint* v ) {
11557   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11558   TRACE("(%d, %p)\n", index, v );
11559   funcs->ext.p_glVertexAttribI4uivEXT( index, v );
11560 }
11561
11562 static void WINAPI wine_glVertexAttribI4usv( GLuint index, const GLushort* v ) {
11563   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11564   TRACE("(%d, %p)\n", index, v );
11565   funcs->ext.p_glVertexAttribI4usv( index, v );
11566 }
11567
11568 static void WINAPI wine_glVertexAttribI4usvEXT( GLuint index, const GLushort* v ) {
11569   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11570   TRACE("(%d, %p)\n", index, v );
11571   funcs->ext.p_glVertexAttribI4usvEXT( index, v );
11572 }
11573
11574 static void WINAPI wine_glVertexAttribIFormat( GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset ) {
11575   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11576   TRACE("(%d, %d, %d, %d)\n", attribindex, size, type, relativeoffset );
11577   funcs->ext.p_glVertexAttribIFormat( attribindex, size, type, relativeoffset );
11578 }
11579
11580 static void WINAPI wine_glVertexAttribIFormatNV( GLuint index, GLint size, GLenum type, GLsizei stride ) {
11581   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11582   TRACE("(%d, %d, %d, %d)\n", index, size, type, stride );
11583   funcs->ext.p_glVertexAttribIFormatNV( index, size, type, stride );
11584 }
11585
11586 static void WINAPI wine_glVertexAttribIPointer( GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
11587   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11588   TRACE("(%d, %d, %d, %d, %p)\n", index, size, type, stride, pointer );
11589   funcs->ext.p_glVertexAttribIPointer( index, size, type, stride, pointer );
11590 }
11591
11592 static void WINAPI wine_glVertexAttribIPointerEXT( GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
11593   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11594   TRACE("(%d, %d, %d, %d, %p)\n", index, size, type, stride, pointer );
11595   funcs->ext.p_glVertexAttribIPointerEXT( index, size, type, stride, pointer );
11596 }
11597
11598 static void WINAPI wine_glVertexAttribL1d( GLuint index, GLdouble x ) {
11599   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11600   TRACE("(%d, %f)\n", index, x );
11601   funcs->ext.p_glVertexAttribL1d( index, x );
11602 }
11603
11604 static void WINAPI wine_glVertexAttribL1dEXT( GLuint index, GLdouble x ) {
11605   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11606   TRACE("(%d, %f)\n", index, x );
11607   funcs->ext.p_glVertexAttribL1dEXT( index, x );
11608 }
11609
11610 static void WINAPI wine_glVertexAttribL1dv( GLuint index, const GLdouble* v ) {
11611   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11612   TRACE("(%d, %p)\n", index, v );
11613   funcs->ext.p_glVertexAttribL1dv( index, v );
11614 }
11615
11616 static void WINAPI wine_glVertexAttribL1dvEXT( GLuint index, const GLdouble* v ) {
11617   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11618   TRACE("(%d, %p)\n", index, v );
11619   funcs->ext.p_glVertexAttribL1dvEXT( index, v );
11620 }
11621
11622 static void WINAPI wine_glVertexAttribL1i64NV( GLuint index, INT64 x ) {
11623   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11624   TRACE("(%d, %s)\n", index, wine_dbgstr_longlong(x) );
11625   funcs->ext.p_glVertexAttribL1i64NV( index, x );
11626 }
11627
11628 static void WINAPI wine_glVertexAttribL1i64vNV( GLuint index, const INT64* v ) {
11629   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11630   TRACE("(%d, %p)\n", index, v );
11631   funcs->ext.p_glVertexAttribL1i64vNV( index, v );
11632 }
11633
11634 static void WINAPI wine_glVertexAttribL1ui64NV( GLuint index, UINT64 x ) {
11635   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11636   TRACE("(%d, %s)\n", index, wine_dbgstr_longlong(x) );
11637   funcs->ext.p_glVertexAttribL1ui64NV( index, x );
11638 }
11639
11640 static void WINAPI wine_glVertexAttribL1ui64vNV( GLuint index, const UINT64* v ) {
11641   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11642   TRACE("(%d, %p)\n", index, v );
11643   funcs->ext.p_glVertexAttribL1ui64vNV( index, v );
11644 }
11645
11646 static void WINAPI wine_glVertexAttribL2d( GLuint index, GLdouble x, GLdouble y ) {
11647   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11648   TRACE("(%d, %f, %f)\n", index, x, y );
11649   funcs->ext.p_glVertexAttribL2d( index, x, y );
11650 }
11651
11652 static void WINAPI wine_glVertexAttribL2dEXT( GLuint index, GLdouble x, GLdouble y ) {
11653   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11654   TRACE("(%d, %f, %f)\n", index, x, y );
11655   funcs->ext.p_glVertexAttribL2dEXT( index, x, y );
11656 }
11657
11658 static void WINAPI wine_glVertexAttribL2dv( GLuint index, const GLdouble* v ) {
11659   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11660   TRACE("(%d, %p)\n", index, v );
11661   funcs->ext.p_glVertexAttribL2dv( index, v );
11662 }
11663
11664 static void WINAPI wine_glVertexAttribL2dvEXT( GLuint index, const GLdouble* v ) {
11665   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11666   TRACE("(%d, %p)\n", index, v );
11667   funcs->ext.p_glVertexAttribL2dvEXT( index, v );
11668 }
11669
11670 static void WINAPI wine_glVertexAttribL2i64NV( GLuint index, INT64 x, INT64 y ) {
11671   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11672   TRACE("(%d, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
11673   funcs->ext.p_glVertexAttribL2i64NV( index, x, y );
11674 }
11675
11676 static void WINAPI wine_glVertexAttribL2i64vNV( GLuint index, const INT64* v ) {
11677   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11678   TRACE("(%d, %p)\n", index, v );
11679   funcs->ext.p_glVertexAttribL2i64vNV( index, v );
11680 }
11681
11682 static void WINAPI wine_glVertexAttribL2ui64NV( GLuint index, UINT64 x, UINT64 y ) {
11683   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11684   TRACE("(%d, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y) );
11685   funcs->ext.p_glVertexAttribL2ui64NV( index, x, y );
11686 }
11687
11688 static void WINAPI wine_glVertexAttribL2ui64vNV( GLuint index, const UINT64* v ) {
11689   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11690   TRACE("(%d, %p)\n", index, v );
11691   funcs->ext.p_glVertexAttribL2ui64vNV( index, v );
11692 }
11693
11694 static void WINAPI wine_glVertexAttribL3d( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
11695   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11696   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
11697   funcs->ext.p_glVertexAttribL3d( index, x, y, z );
11698 }
11699
11700 static void WINAPI wine_glVertexAttribL3dEXT( GLuint index, GLdouble x, GLdouble y, GLdouble z ) {
11701   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11702   TRACE("(%d, %f, %f, %f)\n", index, x, y, z );
11703   funcs->ext.p_glVertexAttribL3dEXT( index, x, y, z );
11704 }
11705
11706 static void WINAPI wine_glVertexAttribL3dv( GLuint index, const GLdouble* v ) {
11707   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11708   TRACE("(%d, %p)\n", index, v );
11709   funcs->ext.p_glVertexAttribL3dv( index, v );
11710 }
11711
11712 static void WINAPI wine_glVertexAttribL3dvEXT( GLuint index, const GLdouble* v ) {
11713   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11714   TRACE("(%d, %p)\n", index, v );
11715   funcs->ext.p_glVertexAttribL3dvEXT( index, v );
11716 }
11717
11718 static void WINAPI wine_glVertexAttribL3i64NV( GLuint index, INT64 x, INT64 y, INT64 z ) {
11719   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11720   TRACE("(%d, %s, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
11721   funcs->ext.p_glVertexAttribL3i64NV( index, x, y, z );
11722 }
11723
11724 static void WINAPI wine_glVertexAttribL3i64vNV( GLuint index, const INT64* v ) {
11725   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11726   TRACE("(%d, %p)\n", index, v );
11727   funcs->ext.p_glVertexAttribL3i64vNV( index, v );
11728 }
11729
11730 static void WINAPI wine_glVertexAttribL3ui64NV( GLuint index, UINT64 x, UINT64 y, UINT64 z ) {
11731   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11732   TRACE("(%d, %s, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z) );
11733   funcs->ext.p_glVertexAttribL3ui64NV( index, x, y, z );
11734 }
11735
11736 static void WINAPI wine_glVertexAttribL3ui64vNV( GLuint index, const UINT64* v ) {
11737   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11738   TRACE("(%d, %p)\n", index, v );
11739   funcs->ext.p_glVertexAttribL3ui64vNV( index, v );
11740 }
11741
11742 static void WINAPI wine_glVertexAttribL4d( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11743   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11744   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
11745   funcs->ext.p_glVertexAttribL4d( index, x, y, z, w );
11746 }
11747
11748 static void WINAPI wine_glVertexAttribL4dEXT( GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
11749   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11750   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, z, w );
11751   funcs->ext.p_glVertexAttribL4dEXT( index, x, y, z, w );
11752 }
11753
11754 static void WINAPI wine_glVertexAttribL4dv( GLuint index, const GLdouble* v ) {
11755   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11756   TRACE("(%d, %p)\n", index, v );
11757   funcs->ext.p_glVertexAttribL4dv( index, v );
11758 }
11759
11760 static void WINAPI wine_glVertexAttribL4dvEXT( GLuint index, const GLdouble* v ) {
11761   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11762   TRACE("(%d, %p)\n", index, v );
11763   funcs->ext.p_glVertexAttribL4dvEXT( index, v );
11764 }
11765
11766 static void WINAPI wine_glVertexAttribL4i64NV( GLuint index, INT64 x, INT64 y, INT64 z, INT64 w ) {
11767   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11768   TRACE("(%d, %s, %s, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
11769   funcs->ext.p_glVertexAttribL4i64NV( index, x, y, z, w );
11770 }
11771
11772 static void WINAPI wine_glVertexAttribL4i64vNV( GLuint index, const INT64* v ) {
11773   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11774   TRACE("(%d, %p)\n", index, v );
11775   funcs->ext.p_glVertexAttribL4i64vNV( index, v );
11776 }
11777
11778 static void WINAPI wine_glVertexAttribL4ui64NV( GLuint index, UINT64 x, UINT64 y, UINT64 z, UINT64 w ) {
11779   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11780   TRACE("(%d, %s, %s, %s, %s)\n", index, wine_dbgstr_longlong(x), wine_dbgstr_longlong(y), wine_dbgstr_longlong(z), wine_dbgstr_longlong(w) );
11781   funcs->ext.p_glVertexAttribL4ui64NV( index, x, y, z, w );
11782 }
11783
11784 static void WINAPI wine_glVertexAttribL4ui64vNV( GLuint index, const UINT64* v ) {
11785   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11786   TRACE("(%d, %p)\n", index, v );
11787   funcs->ext.p_glVertexAttribL4ui64vNV( index, v );
11788 }
11789
11790 static void WINAPI wine_glVertexAttribLFormat( GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset ) {
11791   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11792   TRACE("(%d, %d, %d, %d)\n", attribindex, size, type, relativeoffset );
11793   funcs->ext.p_glVertexAttribLFormat( attribindex, size, type, relativeoffset );
11794 }
11795
11796 static void WINAPI wine_glVertexAttribLFormatNV( GLuint index, GLint size, GLenum type, GLsizei stride ) {
11797   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11798   TRACE("(%d, %d, %d, %d)\n", index, size, type, stride );
11799   funcs->ext.p_glVertexAttribLFormatNV( index, size, type, stride );
11800 }
11801
11802 static void WINAPI wine_glVertexAttribLPointer( GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
11803   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11804   TRACE("(%d, %d, %d, %d, %p)\n", index, size, type, stride, pointer );
11805   funcs->ext.p_glVertexAttribLPointer( index, size, type, stride, pointer );
11806 }
11807
11808 static void WINAPI wine_glVertexAttribLPointerEXT( GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
11809   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11810   TRACE("(%d, %d, %d, %d, %p)\n", index, size, type, stride, pointer );
11811   funcs->ext.p_glVertexAttribLPointerEXT( index, size, type, stride, pointer );
11812 }
11813
11814 static void WINAPI wine_glVertexAttribP1ui( GLuint index, GLenum type, GLboolean normalized, GLuint value ) {
11815   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11816   TRACE("(%d, %d, %d, %d)\n", index, type, normalized, value );
11817   funcs->ext.p_glVertexAttribP1ui( index, type, normalized, value );
11818 }
11819
11820 static void WINAPI wine_glVertexAttribP1uiv( GLuint index, GLenum type, GLboolean normalized, const GLuint* value ) {
11821   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11822   TRACE("(%d, %d, %d, %p)\n", index, type, normalized, value );
11823   funcs->ext.p_glVertexAttribP1uiv( index, type, normalized, value );
11824 }
11825
11826 static void WINAPI wine_glVertexAttribP2ui( GLuint index, GLenum type, GLboolean normalized, GLuint value ) {
11827   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11828   TRACE("(%d, %d, %d, %d)\n", index, type, normalized, value );
11829   funcs->ext.p_glVertexAttribP2ui( index, type, normalized, value );
11830 }
11831
11832 static void WINAPI wine_glVertexAttribP2uiv( GLuint index, GLenum type, GLboolean normalized, const GLuint* value ) {
11833   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11834   TRACE("(%d, %d, %d, %p)\n", index, type, normalized, value );
11835   funcs->ext.p_glVertexAttribP2uiv( index, type, normalized, value );
11836 }
11837
11838 static void WINAPI wine_glVertexAttribP3ui( GLuint index, GLenum type, GLboolean normalized, GLuint value ) {
11839   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11840   TRACE("(%d, %d, %d, %d)\n", index, type, normalized, value );
11841   funcs->ext.p_glVertexAttribP3ui( index, type, normalized, value );
11842 }
11843
11844 static void WINAPI wine_glVertexAttribP3uiv( GLuint index, GLenum type, GLboolean normalized, const GLuint* value ) {
11845   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11846   TRACE("(%d, %d, %d, %p)\n", index, type, normalized, value );
11847   funcs->ext.p_glVertexAttribP3uiv( index, type, normalized, value );
11848 }
11849
11850 static void WINAPI wine_glVertexAttribP4ui( GLuint index, GLenum type, GLboolean normalized, GLuint value ) {
11851   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11852   TRACE("(%d, %d, %d, %d)\n", index, type, normalized, value );
11853   funcs->ext.p_glVertexAttribP4ui( index, type, normalized, value );
11854 }
11855
11856 static void WINAPI wine_glVertexAttribP4uiv( GLuint index, GLenum type, GLboolean normalized, const GLuint* value ) {
11857   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11858   TRACE("(%d, %d, %d, %p)\n", index, type, normalized, value );
11859   funcs->ext.p_glVertexAttribP4uiv( index, type, normalized, value );
11860 }
11861
11862 static void WINAPI wine_glVertexAttribPointer( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* pointer ) {
11863   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11864   TRACE("(%d, %d, %d, %d, %d, %p)\n", index, size, type, normalized, stride, pointer );
11865   funcs->ext.p_glVertexAttribPointer( index, size, type, normalized, stride, pointer );
11866 }
11867
11868 static void WINAPI wine_glVertexAttribPointerARB( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* pointer ) {
11869   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11870   TRACE("(%d, %d, %d, %d, %d, %p)\n", index, size, type, normalized, stride, pointer );
11871   funcs->ext.p_glVertexAttribPointerARB( index, size, type, normalized, stride, pointer );
11872 }
11873
11874 static void WINAPI wine_glVertexAttribPointerNV( GLuint index, GLint fsize, GLenum type, GLsizei stride, const GLvoid* pointer ) {
11875   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11876   TRACE("(%d, %d, %d, %d, %p)\n", index, fsize, type, stride, pointer );
11877   funcs->ext.p_glVertexAttribPointerNV( index, fsize, type, stride, pointer );
11878 }
11879
11880 static void WINAPI wine_glVertexAttribs1dvNV( GLuint index, GLsizei count, const GLdouble* v ) {
11881   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11882   TRACE("(%d, %d, %p)\n", index, count, v );
11883   funcs->ext.p_glVertexAttribs1dvNV( index, count, v );
11884 }
11885
11886 static void WINAPI wine_glVertexAttribs1fvNV( GLuint index, GLsizei count, const GLfloat* v ) {
11887   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11888   TRACE("(%d, %d, %p)\n", index, count, v );
11889   funcs->ext.p_glVertexAttribs1fvNV( index, count, v );
11890 }
11891
11892 static void WINAPI wine_glVertexAttribs1hvNV( GLuint index, GLsizei n, const unsigned short* v ) {
11893   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11894   TRACE("(%d, %d, %p)\n", index, n, v );
11895   funcs->ext.p_glVertexAttribs1hvNV( index, n, v );
11896 }
11897
11898 static void WINAPI wine_glVertexAttribs1svNV( GLuint index, GLsizei count, const GLshort* v ) {
11899   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11900   TRACE("(%d, %d, %p)\n", index, count, v );
11901   funcs->ext.p_glVertexAttribs1svNV( index, count, v );
11902 }
11903
11904 static void WINAPI wine_glVertexAttribs2dvNV( GLuint index, GLsizei count, const GLdouble* v ) {
11905   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11906   TRACE("(%d, %d, %p)\n", index, count, v );
11907   funcs->ext.p_glVertexAttribs2dvNV( index, count, v );
11908 }
11909
11910 static void WINAPI wine_glVertexAttribs2fvNV( GLuint index, GLsizei count, const GLfloat* v ) {
11911   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11912   TRACE("(%d, %d, %p)\n", index, count, v );
11913   funcs->ext.p_glVertexAttribs2fvNV( index, count, v );
11914 }
11915
11916 static void WINAPI wine_glVertexAttribs2hvNV( GLuint index, GLsizei n, const unsigned short* v ) {
11917   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11918   TRACE("(%d, %d, %p)\n", index, n, v );
11919   funcs->ext.p_glVertexAttribs2hvNV( index, n, v );
11920 }
11921
11922 static void WINAPI wine_glVertexAttribs2svNV( GLuint index, GLsizei count, const GLshort* v ) {
11923   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11924   TRACE("(%d, %d, %p)\n", index, count, v );
11925   funcs->ext.p_glVertexAttribs2svNV( index, count, v );
11926 }
11927
11928 static void WINAPI wine_glVertexAttribs3dvNV( GLuint index, GLsizei count, const GLdouble* v ) {
11929   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11930   TRACE("(%d, %d, %p)\n", index, count, v );
11931   funcs->ext.p_glVertexAttribs3dvNV( index, count, v );
11932 }
11933
11934 static void WINAPI wine_glVertexAttribs3fvNV( GLuint index, GLsizei count, const GLfloat* v ) {
11935   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11936   TRACE("(%d, %d, %p)\n", index, count, v );
11937   funcs->ext.p_glVertexAttribs3fvNV( index, count, v );
11938 }
11939
11940 static void WINAPI wine_glVertexAttribs3hvNV( GLuint index, GLsizei n, const unsigned short* v ) {
11941   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11942   TRACE("(%d, %d, %p)\n", index, n, v );
11943   funcs->ext.p_glVertexAttribs3hvNV( index, n, v );
11944 }
11945
11946 static void WINAPI wine_glVertexAttribs3svNV( GLuint index, GLsizei count, const GLshort* v ) {
11947   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11948   TRACE("(%d, %d, %p)\n", index, count, v );
11949   funcs->ext.p_glVertexAttribs3svNV( index, count, v );
11950 }
11951
11952 static void WINAPI wine_glVertexAttribs4dvNV( GLuint index, GLsizei count, const GLdouble* v ) {
11953   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11954   TRACE("(%d, %d, %p)\n", index, count, v );
11955   funcs->ext.p_glVertexAttribs4dvNV( index, count, v );
11956 }
11957
11958 static void WINAPI wine_glVertexAttribs4fvNV( GLuint index, GLsizei count, const GLfloat* v ) {
11959   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11960   TRACE("(%d, %d, %p)\n", index, count, v );
11961   funcs->ext.p_glVertexAttribs4fvNV( index, count, v );
11962 }
11963
11964 static void WINAPI wine_glVertexAttribs4hvNV( GLuint index, GLsizei n, const unsigned short* v ) {
11965   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11966   TRACE("(%d, %d, %p)\n", index, n, v );
11967   funcs->ext.p_glVertexAttribs4hvNV( index, n, v );
11968 }
11969
11970 static void WINAPI wine_glVertexAttribs4svNV( GLuint index, GLsizei count, const GLshort* v ) {
11971   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11972   TRACE("(%d, %d, %p)\n", index, count, v );
11973   funcs->ext.p_glVertexAttribs4svNV( index, count, v );
11974 }
11975
11976 static void WINAPI wine_glVertexAttribs4ubvNV( GLuint index, GLsizei count, const GLubyte* v ) {
11977   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11978   TRACE("(%d, %d, %p)\n", index, count, v );
11979   funcs->ext.p_glVertexAttribs4ubvNV( index, count, v );
11980 }
11981
11982 static void WINAPI wine_glVertexBindingDivisor( GLuint bindingindex, GLuint divisor ) {
11983   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11984   TRACE("(%d, %d)\n", bindingindex, divisor );
11985   funcs->ext.p_glVertexBindingDivisor( bindingindex, divisor );
11986 }
11987
11988 static void WINAPI wine_glVertexBlendARB( GLint count ) {
11989   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11990   TRACE("(%d)\n", count );
11991   funcs->ext.p_glVertexBlendARB( count );
11992 }
11993
11994 static void WINAPI wine_glVertexBlendEnvfATI( GLenum pname, GLfloat param ) {
11995   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
11996   TRACE("(%d, %f)\n", pname, param );
11997   funcs->ext.p_glVertexBlendEnvfATI( pname, param );
11998 }
11999
12000 static void WINAPI wine_glVertexBlendEnviATI( GLenum pname, GLint param ) {
12001   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12002   TRACE("(%d, %d)\n", pname, param );
12003   funcs->ext.p_glVertexBlendEnviATI( pname, param );
12004 }
12005
12006 static void WINAPI wine_glVertexFormatNV( GLint size, GLenum type, GLsizei stride ) {
12007   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12008   TRACE("(%d, %d, %d)\n", size, type, stride );
12009   funcs->ext.p_glVertexFormatNV( size, type, stride );
12010 }
12011
12012 static void WINAPI wine_glVertexP2ui( GLenum type, GLuint value ) {
12013   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12014   TRACE("(%d, %d)\n", type, value );
12015   funcs->ext.p_glVertexP2ui( type, value );
12016 }
12017
12018 static void WINAPI wine_glVertexP2uiv( GLenum type, const GLuint* value ) {
12019   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12020   TRACE("(%d, %p)\n", type, value );
12021   funcs->ext.p_glVertexP2uiv( type, value );
12022 }
12023
12024 static void WINAPI wine_glVertexP3ui( GLenum type, GLuint value ) {
12025   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12026   TRACE("(%d, %d)\n", type, value );
12027   funcs->ext.p_glVertexP3ui( type, value );
12028 }
12029
12030 static void WINAPI wine_glVertexP3uiv( GLenum type, const GLuint* value ) {
12031   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12032   TRACE("(%d, %p)\n", type, value );
12033   funcs->ext.p_glVertexP3uiv( type, value );
12034 }
12035
12036 static void WINAPI wine_glVertexP4ui( GLenum type, GLuint value ) {
12037   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12038   TRACE("(%d, %d)\n", type, value );
12039   funcs->ext.p_glVertexP4ui( type, value );
12040 }
12041
12042 static void WINAPI wine_glVertexP4uiv( GLenum type, const GLuint* value ) {
12043   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12044   TRACE("(%d, %p)\n", type, value );
12045   funcs->ext.p_glVertexP4uiv( type, value );
12046 }
12047
12048 static void WINAPI wine_glVertexPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid* pointer ) {
12049   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12050   TRACE("(%d, %d, %d, %d, %p)\n", size, type, stride, count, pointer );
12051   funcs->ext.p_glVertexPointerEXT( size, type, stride, count, pointer );
12052 }
12053
12054 static void WINAPI wine_glVertexPointerListIBM( GLint size, GLenum type, GLint stride, const GLvoid** pointer, GLint ptrstride ) {
12055   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12056   TRACE("(%d, %d, %d, %p, %d)\n", size, type, stride, pointer, ptrstride );
12057   funcs->ext.p_glVertexPointerListIBM( size, type, stride, pointer, ptrstride );
12058 }
12059
12060 static void WINAPI wine_glVertexPointervINTEL( GLint size, GLenum type, const GLvoid** pointer ) {
12061   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12062   TRACE("(%d, %d, %p)\n", size, type, pointer );
12063   funcs->ext.p_glVertexPointervINTEL( size, type, pointer );
12064 }
12065
12066 static void WINAPI wine_glVertexStream1dATI( GLenum stream, GLdouble x ) {
12067   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12068   TRACE("(%d, %f)\n", stream, x );
12069   funcs->ext.p_glVertexStream1dATI( stream, x );
12070 }
12071
12072 static void WINAPI wine_glVertexStream1dvATI( GLenum stream, const GLdouble* coords ) {
12073   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12074   TRACE("(%d, %p)\n", stream, coords );
12075   funcs->ext.p_glVertexStream1dvATI( stream, coords );
12076 }
12077
12078 static void WINAPI wine_glVertexStream1fATI( GLenum stream, GLfloat x ) {
12079   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12080   TRACE("(%d, %f)\n", stream, x );
12081   funcs->ext.p_glVertexStream1fATI( stream, x );
12082 }
12083
12084 static void WINAPI wine_glVertexStream1fvATI( GLenum stream, const GLfloat* coords ) {
12085   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12086   TRACE("(%d, %p)\n", stream, coords );
12087   funcs->ext.p_glVertexStream1fvATI( stream, coords );
12088 }
12089
12090 static void WINAPI wine_glVertexStream1iATI( GLenum stream, GLint x ) {
12091   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12092   TRACE("(%d, %d)\n", stream, x );
12093   funcs->ext.p_glVertexStream1iATI( stream, x );
12094 }
12095
12096 static void WINAPI wine_glVertexStream1ivATI( GLenum stream, const GLint* coords ) {
12097   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12098   TRACE("(%d, %p)\n", stream, coords );
12099   funcs->ext.p_glVertexStream1ivATI( stream, coords );
12100 }
12101
12102 static void WINAPI wine_glVertexStream1sATI( GLenum stream, GLshort x ) {
12103   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12104   TRACE("(%d, %d)\n", stream, x );
12105   funcs->ext.p_glVertexStream1sATI( stream, x );
12106 }
12107
12108 static void WINAPI wine_glVertexStream1svATI( GLenum stream, const GLshort* coords ) {
12109   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12110   TRACE("(%d, %p)\n", stream, coords );
12111   funcs->ext.p_glVertexStream1svATI( stream, coords );
12112 }
12113
12114 static void WINAPI wine_glVertexStream2dATI( GLenum stream, GLdouble x, GLdouble y ) {
12115   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12116   TRACE("(%d, %f, %f)\n", stream, x, y );
12117   funcs->ext.p_glVertexStream2dATI( stream, x, y );
12118 }
12119
12120 static void WINAPI wine_glVertexStream2dvATI( GLenum stream, const GLdouble* coords ) {
12121   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12122   TRACE("(%d, %p)\n", stream, coords );
12123   funcs->ext.p_glVertexStream2dvATI( stream, coords );
12124 }
12125
12126 static void WINAPI wine_glVertexStream2fATI( GLenum stream, GLfloat x, GLfloat y ) {
12127   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12128   TRACE("(%d, %f, %f)\n", stream, x, y );
12129   funcs->ext.p_glVertexStream2fATI( stream, x, y );
12130 }
12131
12132 static void WINAPI wine_glVertexStream2fvATI( GLenum stream, const GLfloat* coords ) {
12133   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12134   TRACE("(%d, %p)\n", stream, coords );
12135   funcs->ext.p_glVertexStream2fvATI( stream, coords );
12136 }
12137
12138 static void WINAPI wine_glVertexStream2iATI( GLenum stream, GLint x, GLint y ) {
12139   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12140   TRACE("(%d, %d, %d)\n", stream, x, y );
12141   funcs->ext.p_glVertexStream2iATI( stream, x, y );
12142 }
12143
12144 static void WINAPI wine_glVertexStream2ivATI( GLenum stream, const GLint* coords ) {
12145   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12146   TRACE("(%d, %p)\n", stream, coords );
12147   funcs->ext.p_glVertexStream2ivATI( stream, coords );
12148 }
12149
12150 static void WINAPI wine_glVertexStream2sATI( GLenum stream, GLshort x, GLshort y ) {
12151   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12152   TRACE("(%d, %d, %d)\n", stream, x, y );
12153   funcs->ext.p_glVertexStream2sATI( stream, x, y );
12154 }
12155
12156 static void WINAPI wine_glVertexStream2svATI( GLenum stream, const GLshort* coords ) {
12157   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12158   TRACE("(%d, %p)\n", stream, coords );
12159   funcs->ext.p_glVertexStream2svATI( stream, coords );
12160 }
12161
12162 static void WINAPI wine_glVertexStream3dATI( GLenum stream, GLdouble x, GLdouble y, GLdouble z ) {
12163   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12164   TRACE("(%d, %f, %f, %f)\n", stream, x, y, z );
12165   funcs->ext.p_glVertexStream3dATI( stream, x, y, z );
12166 }
12167
12168 static void WINAPI wine_glVertexStream3dvATI( GLenum stream, const GLdouble* coords ) {
12169   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12170   TRACE("(%d, %p)\n", stream, coords );
12171   funcs->ext.p_glVertexStream3dvATI( stream, coords );
12172 }
12173
12174 static void WINAPI wine_glVertexStream3fATI( GLenum stream, GLfloat x, GLfloat y, GLfloat z ) {
12175   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12176   TRACE("(%d, %f, %f, %f)\n", stream, x, y, z );
12177   funcs->ext.p_glVertexStream3fATI( stream, x, y, z );
12178 }
12179
12180 static void WINAPI wine_glVertexStream3fvATI( GLenum stream, const GLfloat* coords ) {
12181   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12182   TRACE("(%d, %p)\n", stream, coords );
12183   funcs->ext.p_glVertexStream3fvATI( stream, coords );
12184 }
12185
12186 static void WINAPI wine_glVertexStream3iATI( GLenum stream, GLint x, GLint y, GLint z ) {
12187   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12188   TRACE("(%d, %d, %d, %d)\n", stream, x, y, z );
12189   funcs->ext.p_glVertexStream3iATI( stream, x, y, z );
12190 }
12191
12192 static void WINAPI wine_glVertexStream3ivATI( GLenum stream, const GLint* coords ) {
12193   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12194   TRACE("(%d, %p)\n", stream, coords );
12195   funcs->ext.p_glVertexStream3ivATI( stream, coords );
12196 }
12197
12198 static void WINAPI wine_glVertexStream3sATI( GLenum stream, GLshort x, GLshort y, GLshort z ) {
12199   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12200   TRACE("(%d, %d, %d, %d)\n", stream, x, y, z );
12201   funcs->ext.p_glVertexStream3sATI( stream, x, y, z );
12202 }
12203
12204 static void WINAPI wine_glVertexStream3svATI( GLenum stream, const GLshort* coords ) {
12205   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12206   TRACE("(%d, %p)\n", stream, coords );
12207   funcs->ext.p_glVertexStream3svATI( stream, coords );
12208 }
12209
12210 static void WINAPI wine_glVertexStream4dATI( GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
12211   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12212   TRACE("(%d, %f, %f, %f, %f)\n", stream, x, y, z, w );
12213   funcs->ext.p_glVertexStream4dATI( stream, x, y, z, w );
12214 }
12215
12216 static void WINAPI wine_glVertexStream4dvATI( GLenum stream, const GLdouble* coords ) {
12217   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12218   TRACE("(%d, %p)\n", stream, coords );
12219   funcs->ext.p_glVertexStream4dvATI( stream, coords );
12220 }
12221
12222 static void WINAPI wine_glVertexStream4fATI( GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
12223   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12224   TRACE("(%d, %f, %f, %f, %f)\n", stream, x, y, z, w );
12225   funcs->ext.p_glVertexStream4fATI( stream, x, y, z, w );
12226 }
12227
12228 static void WINAPI wine_glVertexStream4fvATI( GLenum stream, const GLfloat* coords ) {
12229   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12230   TRACE("(%d, %p)\n", stream, coords );
12231   funcs->ext.p_glVertexStream4fvATI( stream, coords );
12232 }
12233
12234 static void WINAPI wine_glVertexStream4iATI( GLenum stream, GLint x, GLint y, GLint z, GLint w ) {
12235   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12236   TRACE("(%d, %d, %d, %d, %d)\n", stream, x, y, z, w );
12237   funcs->ext.p_glVertexStream4iATI( stream, x, y, z, w );
12238 }
12239
12240 static void WINAPI wine_glVertexStream4ivATI( GLenum stream, const GLint* coords ) {
12241   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12242   TRACE("(%d, %p)\n", stream, coords );
12243   funcs->ext.p_glVertexStream4ivATI( stream, coords );
12244 }
12245
12246 static void WINAPI wine_glVertexStream4sATI( GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w ) {
12247   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12248   TRACE("(%d, %d, %d, %d, %d)\n", stream, x, y, z, w );
12249   funcs->ext.p_glVertexStream4sATI( stream, x, y, z, w );
12250 }
12251
12252 static void WINAPI wine_glVertexStream4svATI( GLenum stream, const GLshort* coords ) {
12253   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12254   TRACE("(%d, %p)\n", stream, coords );
12255   funcs->ext.p_glVertexStream4svATI( stream, coords );
12256 }
12257
12258 static void WINAPI wine_glVertexWeightPointerEXT( GLsizei size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
12259   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12260   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
12261   funcs->ext.p_glVertexWeightPointerEXT( size, type, stride, pointer );
12262 }
12263
12264 static void WINAPI wine_glVertexWeightfEXT( GLfloat weight ) {
12265   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12266   TRACE("(%f)\n", weight );
12267   funcs->ext.p_glVertexWeightfEXT( weight );
12268 }
12269
12270 static void WINAPI wine_glVertexWeightfvEXT( const GLfloat* weight ) {
12271   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12272   TRACE("(%p)\n", weight );
12273   funcs->ext.p_glVertexWeightfvEXT( weight );
12274 }
12275
12276 static void WINAPI wine_glVertexWeighthNV( unsigned short weight ) {
12277   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12278   TRACE("(%d)\n", weight );
12279   funcs->ext.p_glVertexWeighthNV( weight );
12280 }
12281
12282 static void WINAPI wine_glVertexWeighthvNV( const unsigned short* weight ) {
12283   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12284   TRACE("(%p)\n", weight );
12285   funcs->ext.p_glVertexWeighthvNV( weight );
12286 }
12287
12288 static GLenum WINAPI wine_glVideoCaptureNV( GLuint video_capture_slot, GLuint* sequence_num, UINT64* capture_time ) {
12289   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12290   TRACE("(%d, %p, %p)\n", video_capture_slot, sequence_num, capture_time );
12291   return funcs->ext.p_glVideoCaptureNV( video_capture_slot, sequence_num, capture_time );
12292 }
12293
12294 static void WINAPI wine_glVideoCaptureStreamParameterdvNV( GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble* params ) {
12295   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12296   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
12297   funcs->ext.p_glVideoCaptureStreamParameterdvNV( video_capture_slot, stream, pname, params );
12298 }
12299
12300 static void WINAPI wine_glVideoCaptureStreamParameterfvNV( GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat* params ) {
12301   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12302   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
12303   funcs->ext.p_glVideoCaptureStreamParameterfvNV( video_capture_slot, stream, pname, params );
12304 }
12305
12306 static void WINAPI wine_glVideoCaptureStreamParameterivNV( GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint* params ) {
12307   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12308   TRACE("(%d, %d, %d, %p)\n", video_capture_slot, stream, pname, params );
12309   funcs->ext.p_glVideoCaptureStreamParameterivNV( video_capture_slot, stream, pname, params );
12310 }
12311
12312 static void WINAPI wine_glViewportArrayv( GLuint first, GLsizei count, const GLfloat* v ) {
12313   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12314   TRACE("(%d, %d, %p)\n", first, count, v );
12315   funcs->ext.p_glViewportArrayv( first, count, v );
12316 }
12317
12318 static void WINAPI wine_glViewportIndexedf( GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h ) {
12319   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12320   TRACE("(%d, %f, %f, %f, %f)\n", index, x, y, w, h );
12321   funcs->ext.p_glViewportIndexedf( index, x, y, w, h );
12322 }
12323
12324 static void WINAPI wine_glViewportIndexedfv( GLuint index, const GLfloat* v ) {
12325   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12326   TRACE("(%d, %p)\n", index, v );
12327   funcs->ext.p_glViewportIndexedfv( index, v );
12328 }
12329
12330 static void WINAPI wine_glWaitSync( GLvoid* sync, GLbitfield flags, UINT64 timeout ) {
12331   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12332   TRACE("(%p, %d, %s)\n", sync, flags, wine_dbgstr_longlong(timeout) );
12333   funcs->ext.p_glWaitSync( sync, flags, timeout );
12334 }
12335
12336 static void WINAPI wine_glWeightPathsNV( GLuint resultPath, GLsizei numPaths, const GLuint* paths, const GLfloat* weights ) {
12337   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12338   TRACE("(%d, %d, %p, %p)\n", resultPath, numPaths, paths, weights );
12339   funcs->ext.p_glWeightPathsNV( resultPath, numPaths, paths, weights );
12340 }
12341
12342 static void WINAPI wine_glWeightPointerARB( GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) {
12343   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12344   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
12345   funcs->ext.p_glWeightPointerARB( size, type, stride, pointer );
12346 }
12347
12348 static void WINAPI wine_glWeightbvARB( GLint size, const GLbyte* weights ) {
12349   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12350   TRACE("(%d, %p)\n", size, weights );
12351   funcs->ext.p_glWeightbvARB( size, weights );
12352 }
12353
12354 static void WINAPI wine_glWeightdvARB( GLint size, const GLdouble* weights ) {
12355   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12356   TRACE("(%d, %p)\n", size, weights );
12357   funcs->ext.p_glWeightdvARB( size, weights );
12358 }
12359
12360 static void WINAPI wine_glWeightfvARB( GLint size, const GLfloat* weights ) {
12361   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12362   TRACE("(%d, %p)\n", size, weights );
12363   funcs->ext.p_glWeightfvARB( size, weights );
12364 }
12365
12366 static void WINAPI wine_glWeightivARB( GLint size, const GLint* weights ) {
12367   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12368   TRACE("(%d, %p)\n", size, weights );
12369   funcs->ext.p_glWeightivARB( size, weights );
12370 }
12371
12372 static void WINAPI wine_glWeightsvARB( GLint size, const GLshort* weights ) {
12373   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12374   TRACE("(%d, %p)\n", size, weights );
12375   funcs->ext.p_glWeightsvARB( size, weights );
12376 }
12377
12378 static void WINAPI wine_glWeightubvARB( GLint size, const GLubyte* weights ) {
12379   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12380   TRACE("(%d, %p)\n", size, weights );
12381   funcs->ext.p_glWeightubvARB( size, weights );
12382 }
12383
12384 static void WINAPI wine_glWeightuivARB( GLint size, const GLuint* weights ) {
12385   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12386   TRACE("(%d, %p)\n", size, weights );
12387   funcs->ext.p_glWeightuivARB( size, weights );
12388 }
12389
12390 static void WINAPI wine_glWeightusvARB( GLint size, const GLushort* weights ) {
12391   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12392   TRACE("(%d, %p)\n", size, weights );
12393   funcs->ext.p_glWeightusvARB( size, weights );
12394 }
12395
12396 static void WINAPI wine_glWindowPos2d( GLdouble x, GLdouble y ) {
12397   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12398   TRACE("(%f, %f)\n", x, y );
12399   funcs->ext.p_glWindowPos2d( x, y );
12400 }
12401
12402 static void WINAPI wine_glWindowPos2dARB( GLdouble x, GLdouble y ) {
12403   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12404   TRACE("(%f, %f)\n", x, y );
12405   funcs->ext.p_glWindowPos2dARB( x, y );
12406 }
12407
12408 static void WINAPI wine_glWindowPos2dMESA( GLdouble x, GLdouble y ) {
12409   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12410   TRACE("(%f, %f)\n", x, y );
12411   funcs->ext.p_glWindowPos2dMESA( x, y );
12412 }
12413
12414 static void WINAPI wine_glWindowPos2dv( const GLdouble* v ) {
12415   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12416   TRACE("(%p)\n", v );
12417   funcs->ext.p_glWindowPos2dv( v );
12418 }
12419
12420 static void WINAPI wine_glWindowPos2dvARB( const GLdouble* v ) {
12421   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12422   TRACE("(%p)\n", v );
12423   funcs->ext.p_glWindowPos2dvARB( v );
12424 }
12425
12426 static void WINAPI wine_glWindowPos2dvMESA( const GLdouble* v ) {
12427   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12428   TRACE("(%p)\n", v );
12429   funcs->ext.p_glWindowPos2dvMESA( v );
12430 }
12431
12432 static void WINAPI wine_glWindowPos2f( GLfloat x, GLfloat y ) {
12433   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12434   TRACE("(%f, %f)\n", x, y );
12435   funcs->ext.p_glWindowPos2f( x, y );
12436 }
12437
12438 static void WINAPI wine_glWindowPos2fARB( GLfloat x, GLfloat y ) {
12439   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12440   TRACE("(%f, %f)\n", x, y );
12441   funcs->ext.p_glWindowPos2fARB( x, y );
12442 }
12443
12444 static void WINAPI wine_glWindowPos2fMESA( GLfloat x, GLfloat y ) {
12445   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12446   TRACE("(%f, %f)\n", x, y );
12447   funcs->ext.p_glWindowPos2fMESA( x, y );
12448 }
12449
12450 static void WINAPI wine_glWindowPos2fv( const GLfloat* v ) {
12451   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12452   TRACE("(%p)\n", v );
12453   funcs->ext.p_glWindowPos2fv( v );
12454 }
12455
12456 static void WINAPI wine_glWindowPos2fvARB( const GLfloat* v ) {
12457   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12458   TRACE("(%p)\n", v );
12459   funcs->ext.p_glWindowPos2fvARB( v );
12460 }
12461
12462 static void WINAPI wine_glWindowPos2fvMESA( const GLfloat* v ) {
12463   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12464   TRACE("(%p)\n", v );
12465   funcs->ext.p_glWindowPos2fvMESA( v );
12466 }
12467
12468 static void WINAPI wine_glWindowPos2i( GLint x, GLint y ) {
12469   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12470   TRACE("(%d, %d)\n", x, y );
12471   funcs->ext.p_glWindowPos2i( x, y );
12472 }
12473
12474 static void WINAPI wine_glWindowPos2iARB( GLint x, GLint y ) {
12475   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12476   TRACE("(%d, %d)\n", x, y );
12477   funcs->ext.p_glWindowPos2iARB( x, y );
12478 }
12479
12480 static void WINAPI wine_glWindowPos2iMESA( GLint x, GLint y ) {
12481   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12482   TRACE("(%d, %d)\n", x, y );
12483   funcs->ext.p_glWindowPos2iMESA( x, y );
12484 }
12485
12486 static void WINAPI wine_glWindowPos2iv( const GLint* v ) {
12487   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12488   TRACE("(%p)\n", v );
12489   funcs->ext.p_glWindowPos2iv( v );
12490 }
12491
12492 static void WINAPI wine_glWindowPos2ivARB( const GLint* v ) {
12493   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12494   TRACE("(%p)\n", v );
12495   funcs->ext.p_glWindowPos2ivARB( v );
12496 }
12497
12498 static void WINAPI wine_glWindowPos2ivMESA( const GLint* v ) {
12499   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12500   TRACE("(%p)\n", v );
12501   funcs->ext.p_glWindowPos2ivMESA( v );
12502 }
12503
12504 static void WINAPI wine_glWindowPos2s( GLshort x, GLshort y ) {
12505   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12506   TRACE("(%d, %d)\n", x, y );
12507   funcs->ext.p_glWindowPos2s( x, y );
12508 }
12509
12510 static void WINAPI wine_glWindowPos2sARB( GLshort x, GLshort y ) {
12511   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12512   TRACE("(%d, %d)\n", x, y );
12513   funcs->ext.p_glWindowPos2sARB( x, y );
12514 }
12515
12516 static void WINAPI wine_glWindowPos2sMESA( GLshort x, GLshort y ) {
12517   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12518   TRACE("(%d, %d)\n", x, y );
12519   funcs->ext.p_glWindowPos2sMESA( x, y );
12520 }
12521
12522 static void WINAPI wine_glWindowPos2sv( const GLshort* v ) {
12523   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12524   TRACE("(%p)\n", v );
12525   funcs->ext.p_glWindowPos2sv( v );
12526 }
12527
12528 static void WINAPI wine_glWindowPos2svARB( const GLshort* v ) {
12529   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12530   TRACE("(%p)\n", v );
12531   funcs->ext.p_glWindowPos2svARB( v );
12532 }
12533
12534 static void WINAPI wine_glWindowPos2svMESA( const GLshort* v ) {
12535   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12536   TRACE("(%p)\n", v );
12537   funcs->ext.p_glWindowPos2svMESA( v );
12538 }
12539
12540 static void WINAPI wine_glWindowPos3d( GLdouble x, GLdouble y, GLdouble z ) {
12541   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12542   TRACE("(%f, %f, %f)\n", x, y, z );
12543   funcs->ext.p_glWindowPos3d( x, y, z );
12544 }
12545
12546 static void WINAPI wine_glWindowPos3dARB( GLdouble x, GLdouble y, GLdouble z ) {
12547   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12548   TRACE("(%f, %f, %f)\n", x, y, z );
12549   funcs->ext.p_glWindowPos3dARB( x, y, z );
12550 }
12551
12552 static void WINAPI wine_glWindowPos3dMESA( GLdouble x, GLdouble y, GLdouble z ) {
12553   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12554   TRACE("(%f, %f, %f)\n", x, y, z );
12555   funcs->ext.p_glWindowPos3dMESA( x, y, z );
12556 }
12557
12558 static void WINAPI wine_glWindowPos3dv( const GLdouble* v ) {
12559   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12560   TRACE("(%p)\n", v );
12561   funcs->ext.p_glWindowPos3dv( v );
12562 }
12563
12564 static void WINAPI wine_glWindowPos3dvARB( const GLdouble* v ) {
12565   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12566   TRACE("(%p)\n", v );
12567   funcs->ext.p_glWindowPos3dvARB( v );
12568 }
12569
12570 static void WINAPI wine_glWindowPos3dvMESA( const GLdouble* v ) {
12571   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12572   TRACE("(%p)\n", v );
12573   funcs->ext.p_glWindowPos3dvMESA( v );
12574 }
12575
12576 static void WINAPI wine_glWindowPos3f( GLfloat x, GLfloat y, GLfloat z ) {
12577   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12578   TRACE("(%f, %f, %f)\n", x, y, z );
12579   funcs->ext.p_glWindowPos3f( x, y, z );
12580 }
12581
12582 static void WINAPI wine_glWindowPos3fARB( GLfloat x, GLfloat y, GLfloat z ) {
12583   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12584   TRACE("(%f, %f, %f)\n", x, y, z );
12585   funcs->ext.p_glWindowPos3fARB( x, y, z );
12586 }
12587
12588 static void WINAPI wine_glWindowPos3fMESA( GLfloat x, GLfloat y, GLfloat z ) {
12589   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12590   TRACE("(%f, %f, %f)\n", x, y, z );
12591   funcs->ext.p_glWindowPos3fMESA( x, y, z );
12592 }
12593
12594 static void WINAPI wine_glWindowPos3fv( const GLfloat* v ) {
12595   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12596   TRACE("(%p)\n", v );
12597   funcs->ext.p_glWindowPos3fv( v );
12598 }
12599
12600 static void WINAPI wine_glWindowPos3fvARB( const GLfloat* v ) {
12601   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12602   TRACE("(%p)\n", v );
12603   funcs->ext.p_glWindowPos3fvARB( v );
12604 }
12605
12606 static void WINAPI wine_glWindowPos3fvMESA( const GLfloat* v ) {
12607   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12608   TRACE("(%p)\n", v );
12609   funcs->ext.p_glWindowPos3fvMESA( v );
12610 }
12611
12612 static void WINAPI wine_glWindowPos3i( GLint x, GLint y, GLint z ) {
12613   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12614   TRACE("(%d, %d, %d)\n", x, y, z );
12615   funcs->ext.p_glWindowPos3i( x, y, z );
12616 }
12617
12618 static void WINAPI wine_glWindowPos3iARB( GLint x, GLint y, GLint z ) {
12619   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12620   TRACE("(%d, %d, %d)\n", x, y, z );
12621   funcs->ext.p_glWindowPos3iARB( x, y, z );
12622 }
12623
12624 static void WINAPI wine_glWindowPos3iMESA( GLint x, GLint y, GLint z ) {
12625   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12626   TRACE("(%d, %d, %d)\n", x, y, z );
12627   funcs->ext.p_glWindowPos3iMESA( x, y, z );
12628 }
12629
12630 static void WINAPI wine_glWindowPos3iv( const GLint* v ) {
12631   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12632   TRACE("(%p)\n", v );
12633   funcs->ext.p_glWindowPos3iv( v );
12634 }
12635
12636 static void WINAPI wine_glWindowPos3ivARB( const GLint* v ) {
12637   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12638   TRACE("(%p)\n", v );
12639   funcs->ext.p_glWindowPos3ivARB( v );
12640 }
12641
12642 static void WINAPI wine_glWindowPos3ivMESA( const GLint* v ) {
12643   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12644   TRACE("(%p)\n", v );
12645   funcs->ext.p_glWindowPos3ivMESA( v );
12646 }
12647
12648 static void WINAPI wine_glWindowPos3s( GLshort x, GLshort y, GLshort z ) {
12649   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12650   TRACE("(%d, %d, %d)\n", x, y, z );
12651   funcs->ext.p_glWindowPos3s( x, y, z );
12652 }
12653
12654 static void WINAPI wine_glWindowPos3sARB( GLshort x, GLshort y, GLshort z ) {
12655   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12656   TRACE("(%d, %d, %d)\n", x, y, z );
12657   funcs->ext.p_glWindowPos3sARB( x, y, z );
12658 }
12659
12660 static void WINAPI wine_glWindowPos3sMESA( GLshort x, GLshort y, GLshort z ) {
12661   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12662   TRACE("(%d, %d, %d)\n", x, y, z );
12663   funcs->ext.p_glWindowPos3sMESA( x, y, z );
12664 }
12665
12666 static void WINAPI wine_glWindowPos3sv( const GLshort* v ) {
12667   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12668   TRACE("(%p)\n", v );
12669   funcs->ext.p_glWindowPos3sv( v );
12670 }
12671
12672 static void WINAPI wine_glWindowPos3svARB( const GLshort* v ) {
12673   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12674   TRACE("(%p)\n", v );
12675   funcs->ext.p_glWindowPos3svARB( v );
12676 }
12677
12678 static void WINAPI wine_glWindowPos3svMESA( const GLshort* v ) {
12679   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12680   TRACE("(%p)\n", v );
12681   funcs->ext.p_glWindowPos3svMESA( v );
12682 }
12683
12684 static void WINAPI wine_glWindowPos4dMESA( GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
12685   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12686   TRACE("(%f, %f, %f, %f)\n", x, y, z, w );
12687   funcs->ext.p_glWindowPos4dMESA( x, y, z, w );
12688 }
12689
12690 static void WINAPI wine_glWindowPos4dvMESA( const GLdouble* v ) {
12691   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12692   TRACE("(%p)\n", v );
12693   funcs->ext.p_glWindowPos4dvMESA( v );
12694 }
12695
12696 static void WINAPI wine_glWindowPos4fMESA( GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
12697   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12698   TRACE("(%f, %f, %f, %f)\n", x, y, z, w );
12699   funcs->ext.p_glWindowPos4fMESA( x, y, z, w );
12700 }
12701
12702 static void WINAPI wine_glWindowPos4fvMESA( const GLfloat* v ) {
12703   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12704   TRACE("(%p)\n", v );
12705   funcs->ext.p_glWindowPos4fvMESA( v );
12706 }
12707
12708 static void WINAPI wine_glWindowPos4iMESA( GLint x, GLint y, GLint z, GLint w ) {
12709   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12710   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
12711   funcs->ext.p_glWindowPos4iMESA( x, y, z, w );
12712 }
12713
12714 static void WINAPI wine_glWindowPos4ivMESA( const GLint* v ) {
12715   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12716   TRACE("(%p)\n", v );
12717   funcs->ext.p_glWindowPos4ivMESA( v );
12718 }
12719
12720 static void WINAPI wine_glWindowPos4sMESA( GLshort x, GLshort y, GLshort z, GLshort w ) {
12721   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12722   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
12723   funcs->ext.p_glWindowPos4sMESA( x, y, z, w );
12724 }
12725
12726 static void WINAPI wine_glWindowPos4svMESA( const GLshort* v ) {
12727   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12728   TRACE("(%p)\n", v );
12729   funcs->ext.p_glWindowPos4svMESA( v );
12730 }
12731
12732 static void WINAPI wine_glWriteMaskEXT( GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW ) {
12733   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
12734   TRACE("(%d, %d, %d, %d, %d, %d)\n", res, in, outX, outY, outZ, outW );
12735   funcs->ext.p_glWriteMaskEXT( res, in, outX, outY, outZ, outW );
12736 }
12737
12738 const OpenGL_extension extension_registry[2141] = {
12739   { "glActiveProgramEXT", "GL_EXT_separate_shader_objects", wine_glActiveProgramEXT },
12740   { "glActiveShaderProgram", "GL_ARB_separate_shader_objects", wine_glActiveShaderProgram },
12741   { "glActiveStencilFaceEXT", "GL_EXT_stencil_two_side", wine_glActiveStencilFaceEXT },
12742   { "glActiveTexture", "GL_VERSION_1_3", wine_glActiveTexture },
12743   { "glActiveTextureARB", "GL_ARB_multitexture", wine_glActiveTextureARB },
12744   { "glActiveVaryingNV", "GL_NV_transform_feedback", wine_glActiveVaryingNV },
12745   { "glAlphaFragmentOp1ATI", "GL_ATI_fragment_shader", wine_glAlphaFragmentOp1ATI },
12746   { "glAlphaFragmentOp2ATI", "GL_ATI_fragment_shader", wine_glAlphaFragmentOp2ATI },
12747   { "glAlphaFragmentOp3ATI", "GL_ATI_fragment_shader", wine_glAlphaFragmentOp3ATI },
12748   { "glApplyTextureEXT", "GL_EXT_light_texture", wine_glApplyTextureEXT },
12749   { "glAreProgramsResidentNV", "GL_NV_vertex_program", wine_glAreProgramsResidentNV },
12750   { "glAreTexturesResidentEXT", "GL_EXT_texture_object", wine_glAreTexturesResidentEXT },
12751   { "glArrayElementEXT", "GL_EXT_vertex_array", wine_glArrayElementEXT },
12752   { "glArrayObjectATI", "GL_ATI_vertex_array_object", wine_glArrayObjectATI },
12753   { "glAsyncMarkerSGIX", "GL_SGIX_async", wine_glAsyncMarkerSGIX },
12754   { "glAttachObjectARB", "GL_ARB_shader_objects", wine_glAttachObjectARB },
12755   { "glAttachShader", "GL_VERSION_2_0", wine_glAttachShader },
12756   { "glBeginConditionalRender", "GL_VERSION_3_0", wine_glBeginConditionalRender },
12757   { "glBeginConditionalRenderNV", "GL_NV_conditional_render", wine_glBeginConditionalRenderNV },
12758   { "glBeginFragmentShaderATI", "GL_ATI_fragment_shader", wine_glBeginFragmentShaderATI },
12759   { "glBeginOcclusionQueryNV", "GL_NV_occlusion_query", wine_glBeginOcclusionQueryNV },
12760   { "glBeginPerfMonitorAMD", "GL_AMD_performance_monitor", wine_glBeginPerfMonitorAMD },
12761   { "glBeginQuery", "GL_VERSION_1_5", wine_glBeginQuery },
12762   { "glBeginQueryARB", "GL_ARB_occlusion_query", wine_glBeginQueryARB },
12763   { "glBeginQueryIndexed", "GL_ARB_transform_feedback3", wine_glBeginQueryIndexed },
12764   { "glBeginTransformFeedback", "GL_VERSION_3_0", wine_glBeginTransformFeedback },
12765   { "glBeginTransformFeedbackEXT", "GL_EXT_transform_feedback", wine_glBeginTransformFeedbackEXT },
12766   { "glBeginTransformFeedbackNV", "GL_NV_transform_feedback", wine_glBeginTransformFeedbackNV },
12767   { "glBeginVertexShaderEXT", "GL_EXT_vertex_shader", wine_glBeginVertexShaderEXT },
12768   { "glBeginVideoCaptureNV", "GL_NV_video_capture", wine_glBeginVideoCaptureNV },
12769   { "glBindAttribLocation", "GL_VERSION_2_0", wine_glBindAttribLocation },
12770   { "glBindAttribLocationARB", "GL_ARB_vertex_shader", wine_glBindAttribLocationARB },
12771   { "glBindBuffer", "GL_VERSION_1_5", wine_glBindBuffer },
12772   { "glBindBufferARB", "GL_ARB_vertex_buffer_object", wine_glBindBufferARB },
12773   { "glBindBufferBase", "GL_VERSION_3_0", wine_glBindBufferBase },
12774   { "glBindBufferBaseEXT", "GL_EXT_transform_feedback", wine_glBindBufferBaseEXT },
12775   { "glBindBufferBaseNV", "GL_NV_transform_feedback", wine_glBindBufferBaseNV },
12776   { "glBindBufferOffsetEXT", "GL_EXT_transform_feedback", wine_glBindBufferOffsetEXT },
12777   { "glBindBufferOffsetNV", "GL_NV_transform_feedback", wine_glBindBufferOffsetNV },
12778   { "glBindBufferRange", "GL_VERSION_3_0", wine_glBindBufferRange },
12779   { "glBindBufferRangeEXT", "GL_EXT_transform_feedback", wine_glBindBufferRangeEXT },
12780   { "glBindBufferRangeNV", "GL_NV_transform_feedback", wine_glBindBufferRangeNV },
12781   { "glBindFragDataLocation", "GL_VERSION_3_0", wine_glBindFragDataLocation },
12782   { "glBindFragDataLocationEXT", "GL_EXT_gpu_shader4", wine_glBindFragDataLocationEXT },
12783   { "glBindFragDataLocationIndexed", "GL_ARB_blend_func_extended", wine_glBindFragDataLocationIndexed },
12784   { "glBindFragmentShaderATI", "GL_ATI_fragment_shader", wine_glBindFragmentShaderATI },
12785   { "glBindFramebuffer", "GL_ARB_framebuffer_object", wine_glBindFramebuffer },
12786   { "glBindFramebufferEXT", "GL_EXT_framebuffer_object", wine_glBindFramebufferEXT },
12787   { "glBindImageTexture", "GL_ARB_shader_image_load_store", wine_glBindImageTexture },
12788   { "glBindImageTextureEXT", "GL_EXT_shader_image_load_store", wine_glBindImageTextureEXT },
12789   { "glBindLightParameterEXT", "GL_EXT_vertex_shader", wine_glBindLightParameterEXT },
12790   { "glBindMaterialParameterEXT", "GL_EXT_vertex_shader", wine_glBindMaterialParameterEXT },
12791   { "glBindMultiTextureEXT", "GL_EXT_direct_state_access", wine_glBindMultiTextureEXT },
12792   { "glBindParameterEXT", "GL_EXT_vertex_shader", wine_glBindParameterEXT },
12793   { "glBindProgramARB", "GL_ARB_vertex_program", wine_glBindProgramARB },
12794   { "glBindProgramNV", "GL_NV_vertex_program", wine_glBindProgramNV },
12795   { "glBindProgramPipeline", "GL_ARB_separate_shader_objects", wine_glBindProgramPipeline },
12796   { "glBindRenderbuffer", "GL_ARB_framebuffer_object", wine_glBindRenderbuffer },
12797   { "glBindRenderbufferEXT", "GL_EXT_framebuffer_object", wine_glBindRenderbufferEXT },
12798   { "glBindSampler", "GL_ARB_sampler_objects", wine_glBindSampler },
12799   { "glBindTexGenParameterEXT", "GL_EXT_vertex_shader", wine_glBindTexGenParameterEXT },
12800   { "glBindTextureEXT", "GL_EXT_texture_object", wine_glBindTextureEXT },
12801   { "glBindTextureUnitParameterEXT", "GL_EXT_vertex_shader", wine_glBindTextureUnitParameterEXT },
12802   { "glBindTransformFeedback", "GL_ARB_transform_feedback2", wine_glBindTransformFeedback },
12803   { "glBindTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glBindTransformFeedbackNV },
12804   { "glBindVertexArray", "GL_ARB_vertex_array_object", wine_glBindVertexArray },
12805   { "glBindVertexArrayAPPLE", "GL_APPLE_vertex_array_object", wine_glBindVertexArrayAPPLE },
12806   { "glBindVertexBuffer", "GL_ARB_vertex_attrib_binding", wine_glBindVertexBuffer },
12807   { "glBindVertexShaderEXT", "GL_EXT_vertex_shader", wine_glBindVertexShaderEXT },
12808   { "glBindVideoCaptureStreamBufferNV", "GL_NV_video_capture", wine_glBindVideoCaptureStreamBufferNV },
12809   { "glBindVideoCaptureStreamTextureNV", "GL_NV_video_capture", wine_glBindVideoCaptureStreamTextureNV },
12810   { "glBinormal3bEXT", "GL_EXT_coordinate_frame", wine_glBinormal3bEXT },
12811   { "glBinormal3bvEXT", "GL_EXT_coordinate_frame", wine_glBinormal3bvEXT },
12812   { "glBinormal3dEXT", "GL_EXT_coordinate_frame", wine_glBinormal3dEXT },
12813   { "glBinormal3dvEXT", "GL_EXT_coordinate_frame", wine_glBinormal3dvEXT },
12814   { "glBinormal3fEXT", "GL_EXT_coordinate_frame", wine_glBinormal3fEXT },
12815   { "glBinormal3fvEXT", "GL_EXT_coordinate_frame", wine_glBinormal3fvEXT },
12816   { "glBinormal3iEXT", "GL_EXT_coordinate_frame", wine_glBinormal3iEXT },
12817   { "glBinormal3ivEXT", "GL_EXT_coordinate_frame", wine_glBinormal3ivEXT },
12818   { "glBinormal3sEXT", "GL_EXT_coordinate_frame", wine_glBinormal3sEXT },
12819   { "glBinormal3svEXT", "GL_EXT_coordinate_frame", wine_glBinormal3svEXT },
12820   { "glBinormalPointerEXT", "GL_EXT_coordinate_frame", wine_glBinormalPointerEXT },
12821   { "glBlendColor", "GL_VERSION_1_2", wine_glBlendColor },
12822   { "glBlendColorEXT", "GL_EXT_blend_color", wine_glBlendColorEXT },
12823   { "glBlendEquation", "GL_VERSION_1_2", wine_glBlendEquation },
12824   { "glBlendEquationEXT", "GL_EXT_blend_minmax", wine_glBlendEquationEXT },
12825   { "glBlendEquationIndexedAMD", "GL_AMD_draw_buffers_blend", wine_glBlendEquationIndexedAMD },
12826   { "glBlendEquationSeparate", "GL_VERSION_2_0", wine_glBlendEquationSeparate },
12827   { "glBlendEquationSeparateEXT", "GL_EXT_blend_equation_separate", wine_glBlendEquationSeparateEXT },
12828   { "glBlendEquationSeparateIndexedAMD", "GL_AMD_draw_buffers_blend", wine_glBlendEquationSeparateIndexedAMD },
12829   { "glBlendEquationSeparatei", "GL_VERSION_4_0", wine_glBlendEquationSeparatei },
12830   { "glBlendEquationSeparateiARB", "GL_ARB_draw_buffers_blend", wine_glBlendEquationSeparateiARB },
12831   { "glBlendEquationi", "GL_VERSION_4_0", wine_glBlendEquationi },
12832   { "glBlendEquationiARB", "GL_ARB_draw_buffers_blend", wine_glBlendEquationiARB },
12833   { "glBlendFuncIndexedAMD", "GL_AMD_draw_buffers_blend", wine_glBlendFuncIndexedAMD },
12834   { "glBlendFuncSeparate", "GL_VERSION_1_4", wine_glBlendFuncSeparate },
12835   { "glBlendFuncSeparateEXT", "GL_EXT_blend_func_separate", wine_glBlendFuncSeparateEXT },
12836   { "glBlendFuncSeparateINGR", "GL_INGR_blend_func_separate", wine_glBlendFuncSeparateINGR },
12837   { "glBlendFuncSeparateIndexedAMD", "GL_AMD_draw_buffers_blend", wine_glBlendFuncSeparateIndexedAMD },
12838   { "glBlendFuncSeparatei", "GL_VERSION_4_0", wine_glBlendFuncSeparatei },
12839   { "glBlendFuncSeparateiARB", "GL_ARB_draw_buffers_blend", wine_glBlendFuncSeparateiARB },
12840   { "glBlendFunci", "GL_VERSION_4_0", wine_glBlendFunci },
12841   { "glBlendFunciARB", "GL_ARB_draw_buffers_blend", wine_glBlendFunciARB },
12842   { "glBlitFramebuffer", "GL_ARB_framebuffer_object", wine_glBlitFramebuffer },
12843   { "glBlitFramebufferEXT", "GL_EXT_framebuffer_blit", wine_glBlitFramebufferEXT },
12844   { "glBufferAddressRangeNV", "GL_NV_vertex_buffer_unified_memory", wine_glBufferAddressRangeNV },
12845   { "glBufferData", "GL_VERSION_1_5", wine_glBufferData },
12846   { "glBufferDataARB", "GL_ARB_vertex_buffer_object", wine_glBufferDataARB },
12847   { "glBufferParameteriAPPLE", "GL_APPLE_flush_buffer_range", wine_glBufferParameteriAPPLE },
12848   { "glBufferRegionEnabled", "GL_KTX_buffer_region", wine_glBufferRegionEnabled },
12849   { "glBufferSubData", "GL_VERSION_1_5", wine_glBufferSubData },
12850   { "glBufferSubDataARB", "GL_ARB_vertex_buffer_object", wine_glBufferSubDataARB },
12851   { "glCheckFramebufferStatus", "GL_ARB_framebuffer_object", wine_glCheckFramebufferStatus },
12852   { "glCheckFramebufferStatusEXT", "GL_EXT_framebuffer_object", wine_glCheckFramebufferStatusEXT },
12853   { "glCheckNamedFramebufferStatusEXT", "GL_EXT_direct_state_access", wine_glCheckNamedFramebufferStatusEXT },
12854   { "glClampColor", "GL_VERSION_3_0", wine_glClampColor },
12855   { "glClampColorARB", "GL_ARB_color_buffer_float", wine_glClampColorARB },
12856   { "glClearBufferData", "GL_ARB_clear_buffer_object", wine_glClearBufferData },
12857   { "glClearBufferSubData", "GL_ARB_clear_buffer_object", wine_glClearBufferSubData },
12858   { "glClearBufferfi", "GL_VERSION_3_0", wine_glClearBufferfi },
12859   { "glClearBufferfv", "GL_VERSION_3_0", wine_glClearBufferfv },
12860   { "glClearBufferiv", "GL_VERSION_3_0", wine_glClearBufferiv },
12861   { "glClearBufferuiv", "GL_VERSION_3_0", wine_glClearBufferuiv },
12862   { "glClearColorIiEXT", "GL_EXT_texture_integer", wine_glClearColorIiEXT },
12863   { "glClearColorIuiEXT", "GL_EXT_texture_integer", wine_glClearColorIuiEXT },
12864   { "glClearDepthdNV", "GL_NV_depth_buffer_float", wine_glClearDepthdNV },
12865   { "glClearDepthf", "GL_ARB_ES2_compatibility", wine_glClearDepthf },
12866   { "glClearNamedBufferDataEXT", "GL_ARB_clear_buffer_object", wine_glClearNamedBufferDataEXT },
12867   { "glClearNamedBufferSubDataEXT", "GL_ARB_clear_buffer_object", wine_glClearNamedBufferSubDataEXT },
12868   { "glClientActiveTexture", "GL_VERSION_1_3_DEPRECATED", wine_glClientActiveTexture },
12869   { "glClientActiveTextureARB", "GL_ARB_multitexture", wine_glClientActiveTextureARB },
12870   { "glClientActiveVertexStreamATI", "GL_ATI_vertex_streams", wine_glClientActiveVertexStreamATI },
12871   { "glClientAttribDefaultEXT", "GL_EXT_direct_state_access", wine_glClientAttribDefaultEXT },
12872   { "glClientWaitSync", "GL_ARB_sync", wine_glClientWaitSync },
12873   { "glColor3fVertex3fSUN", "GL_SUN_vertex", wine_glColor3fVertex3fSUN },
12874   { "glColor3fVertex3fvSUN", "GL_SUN_vertex", wine_glColor3fVertex3fvSUN },
12875   { "glColor3hNV", "GL_NV_half_float", wine_glColor3hNV },
12876   { "glColor3hvNV", "GL_NV_half_float", wine_glColor3hvNV },
12877   { "glColor4fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glColor4fNormal3fVertex3fSUN },
12878   { "glColor4fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glColor4fNormal3fVertex3fvSUN },
12879   { "glColor4hNV", "GL_NV_half_float", wine_glColor4hNV },
12880   { "glColor4hvNV", "GL_NV_half_float", wine_glColor4hvNV },
12881   { "glColor4ubVertex2fSUN", "GL_SUN_vertex", wine_glColor4ubVertex2fSUN },
12882   { "glColor4ubVertex2fvSUN", "GL_SUN_vertex", wine_glColor4ubVertex2fvSUN },
12883   { "glColor4ubVertex3fSUN", "GL_SUN_vertex", wine_glColor4ubVertex3fSUN },
12884   { "glColor4ubVertex3fvSUN", "GL_SUN_vertex", wine_glColor4ubVertex3fvSUN },
12885   { "glColorFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glColorFormatNV },
12886   { "glColorFragmentOp1ATI", "GL_ATI_fragment_shader", wine_glColorFragmentOp1ATI },
12887   { "glColorFragmentOp2ATI", "GL_ATI_fragment_shader", wine_glColorFragmentOp2ATI },
12888   { "glColorFragmentOp3ATI", "GL_ATI_fragment_shader", wine_glColorFragmentOp3ATI },
12889   { "glColorMaskIndexedEXT", "GL_EXT_draw_buffers2", wine_glColorMaskIndexedEXT },
12890   { "glColorMaski", "GL_VERSION_3_0", wine_glColorMaski },
12891   { "glColorP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glColorP3ui },
12892   { "glColorP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glColorP3uiv },
12893   { "glColorP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glColorP4ui },
12894   { "glColorP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glColorP4uiv },
12895   { "glColorPointerEXT", "GL_EXT_vertex_array", wine_glColorPointerEXT },
12896   { "glColorPointerListIBM", "GL_IBM_vertex_array_lists", wine_glColorPointerListIBM },
12897   { "glColorPointervINTEL", "GL_INTEL_parallel_arrays", wine_glColorPointervINTEL },
12898   { "glColorSubTable", "GL_VERSION_1_2_DEPRECATED", wine_glColorSubTable },
12899   { "glColorSubTableEXT", "GL_EXT_color_subtable", wine_glColorSubTableEXT },
12900   { "glColorTable", "GL_VERSION_1_2_DEPRECATED", wine_glColorTable },
12901   { "glColorTableEXT", "GL_EXT_paletted_texture", wine_glColorTableEXT },
12902   { "glColorTableParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glColorTableParameterfv },
12903   { "glColorTableParameterfvSGI", "GL_SGI_color_table", wine_glColorTableParameterfvSGI },
12904   { "glColorTableParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glColorTableParameteriv },
12905   { "glColorTableParameterivSGI", "GL_SGI_color_table", wine_glColorTableParameterivSGI },
12906   { "glColorTableSGI", "GL_SGI_color_table", wine_glColorTableSGI },
12907   { "glCombinerInputNV", "GL_NV_register_combiners", wine_glCombinerInputNV },
12908   { "glCombinerOutputNV", "GL_NV_register_combiners", wine_glCombinerOutputNV },
12909   { "glCombinerParameterfNV", "GL_NV_register_combiners", wine_glCombinerParameterfNV },
12910   { "glCombinerParameterfvNV", "GL_NV_register_combiners", wine_glCombinerParameterfvNV },
12911   { "glCombinerParameteriNV", "GL_NV_register_combiners", wine_glCombinerParameteriNV },
12912   { "glCombinerParameterivNV", "GL_NV_register_combiners", wine_glCombinerParameterivNV },
12913   { "glCombinerStageParameterfvNV", "GL_NV_register_combiners2", wine_glCombinerStageParameterfvNV },
12914   { "glCompileShader", "GL_VERSION_2_0", wine_glCompileShader },
12915   { "glCompileShaderARB", "GL_ARB_shader_objects", wine_glCompileShaderARB },
12916   { "glCompileShaderIncludeARB", "GL_ARB_shading_language_include", wine_glCompileShaderIncludeARB },
12917   { "glCompressedMultiTexImage1DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexImage1DEXT },
12918   { "glCompressedMultiTexImage2DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexImage2DEXT },
12919   { "glCompressedMultiTexImage3DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexImage3DEXT },
12920   { "glCompressedMultiTexSubImage1DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexSubImage1DEXT },
12921   { "glCompressedMultiTexSubImage2DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexSubImage2DEXT },
12922   { "glCompressedMultiTexSubImage3DEXT", "GL_EXT_direct_state_access", wine_glCompressedMultiTexSubImage3DEXT },
12923   { "glCompressedTexImage1D", "GL_VERSION_1_3", wine_glCompressedTexImage1D },
12924   { "glCompressedTexImage1DARB", "GL_ARB_texture_compression", wine_glCompressedTexImage1DARB },
12925   { "glCompressedTexImage2D", "GL_VERSION_1_3", wine_glCompressedTexImage2D },
12926   { "glCompressedTexImage2DARB", "GL_ARB_texture_compression", wine_glCompressedTexImage2DARB },
12927   { "glCompressedTexImage3D", "GL_VERSION_1_3", wine_glCompressedTexImage3D },
12928   { "glCompressedTexImage3DARB", "GL_ARB_texture_compression", wine_glCompressedTexImage3DARB },
12929   { "glCompressedTexSubImage1D", "GL_VERSION_1_3", wine_glCompressedTexSubImage1D },
12930   { "glCompressedTexSubImage1DARB", "GL_ARB_texture_compression", wine_glCompressedTexSubImage1DARB },
12931   { "glCompressedTexSubImage2D", "GL_VERSION_1_3", wine_glCompressedTexSubImage2D },
12932   { "glCompressedTexSubImage2DARB", "GL_ARB_texture_compression", wine_glCompressedTexSubImage2DARB },
12933   { "glCompressedTexSubImage3D", "GL_VERSION_1_3", wine_glCompressedTexSubImage3D },
12934   { "glCompressedTexSubImage3DARB", "GL_ARB_texture_compression", wine_glCompressedTexSubImage3DARB },
12935   { "glCompressedTextureImage1DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureImage1DEXT },
12936   { "glCompressedTextureImage2DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureImage2DEXT },
12937   { "glCompressedTextureImage3DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureImage3DEXT },
12938   { "glCompressedTextureSubImage1DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureSubImage1DEXT },
12939   { "glCompressedTextureSubImage2DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureSubImage2DEXT },
12940   { "glCompressedTextureSubImage3DEXT", "GL_EXT_direct_state_access", wine_glCompressedTextureSubImage3DEXT },
12941   { "glConvolutionFilter1D", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionFilter1D },
12942   { "glConvolutionFilter1DEXT", "GL_EXT_convolution", wine_glConvolutionFilter1DEXT },
12943   { "glConvolutionFilter2D", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionFilter2D },
12944   { "glConvolutionFilter2DEXT", "GL_EXT_convolution", wine_glConvolutionFilter2DEXT },
12945   { "glConvolutionParameterf", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionParameterf },
12946   { "glConvolutionParameterfEXT", "GL_EXT_convolution", wine_glConvolutionParameterfEXT },
12947   { "glConvolutionParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionParameterfv },
12948   { "glConvolutionParameterfvEXT", "GL_EXT_convolution", wine_glConvolutionParameterfvEXT },
12949   { "glConvolutionParameteri", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionParameteri },
12950   { "glConvolutionParameteriEXT", "GL_EXT_convolution", wine_glConvolutionParameteriEXT },
12951   { "glConvolutionParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glConvolutionParameteriv },
12952   { "glConvolutionParameterivEXT", "GL_EXT_convolution", wine_glConvolutionParameterivEXT },
12953   { "glCopyBufferSubData", "GL_ARB_copy_buffer", wine_glCopyBufferSubData },
12954   { "glCopyColorSubTable", "GL_VERSION_1_2_DEPRECATED", wine_glCopyColorSubTable },
12955   { "glCopyColorSubTableEXT", "GL_EXT_color_subtable", wine_glCopyColorSubTableEXT },
12956   { "glCopyColorTable", "GL_VERSION_1_2_DEPRECATED", wine_glCopyColorTable },
12957   { "glCopyColorTableSGI", "GL_SGI_color_table", wine_glCopyColorTableSGI },
12958   { "glCopyConvolutionFilter1D", "GL_VERSION_1_2_DEPRECATED", wine_glCopyConvolutionFilter1D },
12959   { "glCopyConvolutionFilter1DEXT", "GL_EXT_convolution", wine_glCopyConvolutionFilter1DEXT },
12960   { "glCopyConvolutionFilter2D", "GL_VERSION_1_2_DEPRECATED", wine_glCopyConvolutionFilter2D },
12961   { "glCopyConvolutionFilter2DEXT", "GL_EXT_convolution", wine_glCopyConvolutionFilter2DEXT },
12962   { "glCopyImageSubData", "GL_ARB_copy_image", wine_glCopyImageSubData },
12963   { "glCopyImageSubDataNV", "GL_NV_copy_image", wine_glCopyImageSubDataNV },
12964   { "glCopyMultiTexImage1DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexImage1DEXT },
12965   { "glCopyMultiTexImage2DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexImage2DEXT },
12966   { "glCopyMultiTexSubImage1DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexSubImage1DEXT },
12967   { "glCopyMultiTexSubImage2DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexSubImage2DEXT },
12968   { "glCopyMultiTexSubImage3DEXT", "GL_EXT_direct_state_access", wine_glCopyMultiTexSubImage3DEXT },
12969   { "glCopyPathNV", "GL_NV_path_rendering", wine_glCopyPathNV },
12970   { "glCopyTexImage1DEXT", "GL_EXT_copy_texture", wine_glCopyTexImage1DEXT },
12971   { "glCopyTexImage2DEXT", "GL_EXT_copy_texture", wine_glCopyTexImage2DEXT },
12972   { "glCopyTexSubImage1DEXT", "GL_EXT_copy_texture", wine_glCopyTexSubImage1DEXT },
12973   { "glCopyTexSubImage2DEXT", "GL_EXT_copy_texture", wine_glCopyTexSubImage2DEXT },
12974   { "glCopyTexSubImage3D", "GL_VERSION_1_2", wine_glCopyTexSubImage3D },
12975   { "glCopyTexSubImage3DEXT", "GL_EXT_copy_texture", wine_glCopyTexSubImage3DEXT },
12976   { "glCopyTextureImage1DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureImage1DEXT },
12977   { "glCopyTextureImage2DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureImage2DEXT },
12978   { "glCopyTextureSubImage1DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureSubImage1DEXT },
12979   { "glCopyTextureSubImage2DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureSubImage2DEXT },
12980   { "glCopyTextureSubImage3DEXT", "GL_EXT_direct_state_access", wine_glCopyTextureSubImage3DEXT },
12981   { "glCoverFillPathInstancedNV", "GL_NV_path_rendering", wine_glCoverFillPathInstancedNV },
12982   { "glCoverFillPathNV", "GL_NV_path_rendering", wine_glCoverFillPathNV },
12983   { "glCoverStrokePathInstancedNV", "GL_NV_path_rendering", wine_glCoverStrokePathInstancedNV },
12984   { "glCoverStrokePathNV", "GL_NV_path_rendering", wine_glCoverStrokePathNV },
12985   { "glCreateProgram", "GL_VERSION_2_0", wine_glCreateProgram },
12986   { "glCreateProgramObjectARB", "GL_ARB_shader_objects", wine_glCreateProgramObjectARB },
12987   { "glCreateShader", "GL_VERSION_2_0", wine_glCreateShader },
12988   { "glCreateShaderObjectARB", "GL_ARB_shader_objects", wine_glCreateShaderObjectARB },
12989   { "glCreateShaderProgramEXT", "GL_EXT_separate_shader_objects", wine_glCreateShaderProgramEXT },
12990   { "glCreateShaderProgramv", "GL_ARB_separate_shader_objects", wine_glCreateShaderProgramv },
12991   { "glCreateSyncFromCLeventARB", "GL_ARB_cl_event", wine_glCreateSyncFromCLeventARB },
12992   { "glCullParameterdvEXT", "GL_EXT_cull_vertex", wine_glCullParameterdvEXT },
12993   { "glCullParameterfvEXT", "GL_EXT_cull_vertex", wine_glCullParameterfvEXT },
12994   { "glCurrentPaletteMatrixARB", "GL_ARB_matrix_palette", wine_glCurrentPaletteMatrixARB },
12995   { "glDebugMessageCallback", "GL_KHR_debug", wine_glDebugMessageCallback },
12996   { "glDebugMessageCallbackAMD", "GL_AMD_debug_output", wine_glDebugMessageCallbackAMD },
12997   { "glDebugMessageCallbackARB", "GL_ARB_debug_output", wine_glDebugMessageCallbackARB },
12998   { "glDebugMessageControl", "GL_KHR_debug", wine_glDebugMessageControl },
12999   { "glDebugMessageControlARB", "GL_ARB_debug_output", wine_glDebugMessageControlARB },
13000   { "glDebugMessageEnableAMD", "GL_AMD_debug_output", wine_glDebugMessageEnableAMD },
13001   { "glDebugMessageInsert", "GL_KHR_debug", wine_glDebugMessageInsert },
13002   { "glDebugMessageInsertAMD", "GL_AMD_debug_output", wine_glDebugMessageInsertAMD },
13003   { "glDebugMessageInsertARB", "GL_ARB_debug_output", wine_glDebugMessageInsertARB },
13004   { "glDeformSGIX", "GL_SGIX_polynomial_ffd", wine_glDeformSGIX },
13005   { "glDeformationMap3dSGIX", "GL_SGIX_polynomial_ffd", wine_glDeformationMap3dSGIX },
13006   { "glDeformationMap3fSGIX", "GL_SGIX_polynomial_ffd", wine_glDeformationMap3fSGIX },
13007   { "glDeleteAsyncMarkersSGIX", "GL_SGIX_async", wine_glDeleteAsyncMarkersSGIX },
13008   { "glDeleteBufferRegion", "GL_KTX_buffer_region", wine_glDeleteBufferRegion },
13009   { "glDeleteBuffers", "GL_VERSION_1_5", wine_glDeleteBuffers },
13010   { "glDeleteBuffersARB", "GL_ARB_vertex_buffer_object", wine_glDeleteBuffersARB },
13011   { "glDeleteFencesAPPLE", "GL_APPLE_fence", wine_glDeleteFencesAPPLE },
13012   { "glDeleteFencesNV", "GL_NV_fence", wine_glDeleteFencesNV },
13013   { "glDeleteFragmentShaderATI", "GL_ATI_fragment_shader", wine_glDeleteFragmentShaderATI },
13014   { "glDeleteFramebuffers", "GL_ARB_framebuffer_object", wine_glDeleteFramebuffers },
13015   { "glDeleteFramebuffersEXT", "GL_EXT_framebuffer_object", wine_glDeleteFramebuffersEXT },
13016   { "glDeleteNamedStringARB", "GL_ARB_shading_language_include", wine_glDeleteNamedStringARB },
13017   { "glDeleteNamesAMD", "GL_AMD_name_gen_delete", wine_glDeleteNamesAMD },
13018   { "glDeleteObjectARB", "GL_ARB_shader_objects", wine_glDeleteObjectARB },
13019   { "glDeleteObjectBufferATI", "GL_ATI_vertex_array_object", wine_glDeleteObjectBufferATI },
13020   { "glDeleteOcclusionQueriesNV", "GL_NV_occlusion_query", wine_glDeleteOcclusionQueriesNV },
13021   { "glDeletePathsNV", "GL_NV_path_rendering", wine_glDeletePathsNV },
13022   { "glDeletePerfMonitorsAMD", "GL_AMD_performance_monitor", wine_glDeletePerfMonitorsAMD },
13023   { "glDeleteProgram", "GL_VERSION_2_0", wine_glDeleteProgram },
13024   { "glDeleteProgramPipelines", "GL_ARB_separate_shader_objects", wine_glDeleteProgramPipelines },
13025   { "glDeleteProgramsARB", "GL_ARB_vertex_program", wine_glDeleteProgramsARB },
13026   { "glDeleteProgramsNV", "GL_NV_vertex_program", wine_glDeleteProgramsNV },
13027   { "glDeleteQueries", "GL_VERSION_1_5", wine_glDeleteQueries },
13028   { "glDeleteQueriesARB", "GL_ARB_occlusion_query", wine_glDeleteQueriesARB },
13029   { "glDeleteRenderbuffers", "GL_ARB_framebuffer_object", wine_glDeleteRenderbuffers },
13030   { "glDeleteRenderbuffersEXT", "GL_EXT_framebuffer_object", wine_glDeleteRenderbuffersEXT },
13031   { "glDeleteSamplers", "GL_ARB_sampler_objects", wine_glDeleteSamplers },
13032   { "glDeleteShader", "GL_VERSION_2_0", wine_glDeleteShader },
13033   { "glDeleteSync", "GL_ARB_sync", wine_glDeleteSync },
13034   { "glDeleteTexturesEXT", "GL_EXT_texture_object", wine_glDeleteTexturesEXT },
13035   { "glDeleteTransformFeedbacks", "GL_ARB_transform_feedback2", wine_glDeleteTransformFeedbacks },
13036   { "glDeleteTransformFeedbacksNV", "GL_NV_transform_feedback2", wine_glDeleteTransformFeedbacksNV },
13037   { "glDeleteVertexArrays", "GL_ARB_vertex_array_object", wine_glDeleteVertexArrays },
13038   { "glDeleteVertexArraysAPPLE", "GL_APPLE_vertex_array_object", wine_glDeleteVertexArraysAPPLE },
13039   { "glDeleteVertexShaderEXT", "GL_EXT_vertex_shader", wine_glDeleteVertexShaderEXT },
13040   { "glDepthBoundsEXT", "GL_EXT_depth_bounds_test", wine_glDepthBoundsEXT },
13041   { "glDepthBoundsdNV", "GL_NV_depth_buffer_float", wine_glDepthBoundsdNV },
13042   { "glDepthRangeArrayv", "GL_ARB_viewport_array", wine_glDepthRangeArrayv },
13043   { "glDepthRangeIndexed", "GL_ARB_viewport_array", wine_glDepthRangeIndexed },
13044   { "glDepthRangedNV", "GL_NV_depth_buffer_float", wine_glDepthRangedNV },
13045   { "glDepthRangef", "GL_ARB_ES2_compatibility", wine_glDepthRangef },
13046   { "glDetachObjectARB", "GL_ARB_shader_objects", wine_glDetachObjectARB },
13047   { "glDetachShader", "GL_VERSION_2_0", wine_glDetachShader },
13048   { "glDetailTexFuncSGIS", "GL_SGIS_detail_texture", wine_glDetailTexFuncSGIS },
13049   { "glDisableClientStateIndexedEXT", "GL_EXT_direct_state_access", wine_glDisableClientStateIndexedEXT },
13050   { "glDisableIndexedEXT", "GL_EXT_draw_buffers2", wine_glDisableIndexedEXT },
13051   { "glDisableVariantClientStateEXT", "GL_EXT_vertex_shader", wine_glDisableVariantClientStateEXT },
13052   { "glDisableVertexAttribAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glDisableVertexAttribAPPLE },
13053   { "glDisableVertexAttribArray", "GL_VERSION_2_0", wine_glDisableVertexAttribArray },
13054   { "glDisableVertexAttribArrayARB", "GL_ARB_vertex_program", wine_glDisableVertexAttribArrayARB },
13055   { "glDisablei", "GL_VERSION_3_0", wine_glDisablei },
13056   { "glDispatchCompute", "GL_ARB_compute_shader", wine_glDispatchCompute },
13057   { "glDispatchComputeIndirect", "GL_ARB_compute_shader", wine_glDispatchComputeIndirect },
13058   { "glDrawArraysEXT", "GL_EXT_vertex_array", wine_glDrawArraysEXT },
13059   { "glDrawArraysIndirect", "GL_ARB_draw_indirect", wine_glDrawArraysIndirect },
13060   { "glDrawArraysInstanced", "GL_VERSION_3_1", wine_glDrawArraysInstanced },
13061   { "glDrawArraysInstancedARB", "GL_ARB_draw_instanced", wine_glDrawArraysInstancedARB },
13062   { "glDrawArraysInstancedBaseInstance", "GL_ARB_base_instance", wine_glDrawArraysInstancedBaseInstance },
13063   { "glDrawArraysInstancedEXT", "GL_EXT_draw_instanced", wine_glDrawArraysInstancedEXT },
13064   { "glDrawBufferRegion", "GL_KTX_buffer_region", wine_glDrawBufferRegion },
13065   { "glDrawBuffers", "GL_VERSION_2_0", wine_glDrawBuffers },
13066   { "glDrawBuffersARB", "GL_ARB_draw_buffers", wine_glDrawBuffersARB },
13067   { "glDrawBuffersATI", "GL_ATI_draw_buffers", wine_glDrawBuffersATI },
13068   { "glDrawElementArrayAPPLE", "GL_APPLE_element_array", wine_glDrawElementArrayAPPLE },
13069   { "glDrawElementArrayATI", "GL_ATI_element_array", wine_glDrawElementArrayATI },
13070   { "glDrawElementsBaseVertex", "GL_ARB_draw_elements_base_vertex", wine_glDrawElementsBaseVertex },
13071   { "glDrawElementsIndirect", "GL_ARB_draw_indirect", wine_glDrawElementsIndirect },
13072   { "glDrawElementsInstanced", "GL_VERSION_3_1", wine_glDrawElementsInstanced },
13073   { "glDrawElementsInstancedARB", "GL_ARB_draw_instanced", wine_glDrawElementsInstancedARB },
13074   { "glDrawElementsInstancedBaseInstance", "GL_ARB_base_instance", wine_glDrawElementsInstancedBaseInstance },
13075   { "glDrawElementsInstancedBaseVertex", "GL_ARB_draw_elements_base_vertex", wine_glDrawElementsInstancedBaseVertex },
13076   { "glDrawElementsInstancedBaseVertexBaseInstance", "GL_ARB_base_instance", wine_glDrawElementsInstancedBaseVertexBaseInstance },
13077   { "glDrawElementsInstancedEXT", "GL_EXT_draw_instanced", wine_glDrawElementsInstancedEXT },
13078   { "glDrawMeshArraysSUN", "GL_SUN_mesh_array", wine_glDrawMeshArraysSUN },
13079   { "glDrawRangeElementArrayAPPLE", "GL_APPLE_element_array", wine_glDrawRangeElementArrayAPPLE },
13080   { "glDrawRangeElementArrayATI", "GL_ATI_element_array", wine_glDrawRangeElementArrayATI },
13081   { "glDrawRangeElements", "GL_VERSION_1_2", wine_glDrawRangeElements },
13082   { "glDrawRangeElementsBaseVertex", "GL_ARB_draw_elements_base_vertex", wine_glDrawRangeElementsBaseVertex },
13083   { "glDrawRangeElementsEXT", "GL_EXT_draw_range_elements", wine_glDrawRangeElementsEXT },
13084   { "glDrawTransformFeedback", "GL_ARB_transform_feedback2", wine_glDrawTransformFeedback },
13085   { "glDrawTransformFeedbackInstanced", "GL_ARB_transform_feedback_instanced", wine_glDrawTransformFeedbackInstanced },
13086   { "glDrawTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glDrawTransformFeedbackNV },
13087   { "glDrawTransformFeedbackStream", "GL_ARB_transform_feedback3", wine_glDrawTransformFeedbackStream },
13088   { "glDrawTransformFeedbackStreamInstanced", "GL_ARB_transform_feedback_instanced", wine_glDrawTransformFeedbackStreamInstanced },
13089   { "glEdgeFlagFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glEdgeFlagFormatNV },
13090   { "glEdgeFlagPointerEXT", "GL_EXT_vertex_array", wine_glEdgeFlagPointerEXT },
13091   { "glEdgeFlagPointerListIBM", "GL_IBM_vertex_array_lists", wine_glEdgeFlagPointerListIBM },
13092   { "glElementPointerAPPLE", "GL_APPLE_element_array", wine_glElementPointerAPPLE },
13093   { "glElementPointerATI", "GL_ATI_element_array", wine_glElementPointerATI },
13094   { "glEnableClientStateIndexedEXT", "GL_EXT_direct_state_access", wine_glEnableClientStateIndexedEXT },
13095   { "glEnableIndexedEXT", "GL_EXT_draw_buffers2", wine_glEnableIndexedEXT },
13096   { "glEnableVariantClientStateEXT", "GL_EXT_vertex_shader", wine_glEnableVariantClientStateEXT },
13097   { "glEnableVertexAttribAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glEnableVertexAttribAPPLE },
13098   { "glEnableVertexAttribArray", "GL_VERSION_2_0", wine_glEnableVertexAttribArray },
13099   { "glEnableVertexAttribArrayARB", "GL_ARB_vertex_program", wine_glEnableVertexAttribArrayARB },
13100   { "glEnablei", "GL_VERSION_3_0", wine_glEnablei },
13101   { "glEndConditionalRender", "GL_VERSION_3_0", wine_glEndConditionalRender },
13102   { "glEndConditionalRenderNV", "GL_NV_conditional_render", wine_glEndConditionalRenderNV },
13103   { "glEndFragmentShaderATI", "GL_ATI_fragment_shader", wine_glEndFragmentShaderATI },
13104   { "glEndOcclusionQueryNV", "GL_NV_occlusion_query", wine_glEndOcclusionQueryNV },
13105   { "glEndPerfMonitorAMD", "GL_AMD_performance_monitor", wine_glEndPerfMonitorAMD },
13106   { "glEndQuery", "GL_VERSION_1_5", wine_glEndQuery },
13107   { "glEndQueryARB", "GL_ARB_occlusion_query", wine_glEndQueryARB },
13108   { "glEndQueryIndexed", "GL_ARB_transform_feedback3", wine_glEndQueryIndexed },
13109   { "glEndTransformFeedback", "GL_VERSION_3_0", wine_glEndTransformFeedback },
13110   { "glEndTransformFeedbackEXT", "GL_EXT_transform_feedback", wine_glEndTransformFeedbackEXT },
13111   { "glEndTransformFeedbackNV", "GL_NV_transform_feedback", wine_glEndTransformFeedbackNV },
13112   { "glEndVertexShaderEXT", "GL_EXT_vertex_shader", wine_glEndVertexShaderEXT },
13113   { "glEndVideoCaptureNV", "GL_NV_video_capture", wine_glEndVideoCaptureNV },
13114   { "glEvalMapsNV", "GL_NV_evaluators", wine_glEvalMapsNV },
13115   { "glExecuteProgramNV", "GL_NV_vertex_program", wine_glExecuteProgramNV },
13116   { "glExtractComponentEXT", "GL_EXT_vertex_shader", wine_glExtractComponentEXT },
13117   { "glFenceSync", "GL_ARB_sync", wine_glFenceSync },
13118   { "glFinalCombinerInputNV", "GL_NV_register_combiners", wine_glFinalCombinerInputNV },
13119   { "glFinishAsyncSGIX", "GL_SGIX_async", wine_glFinishAsyncSGIX },
13120   { "glFinishFenceAPPLE", "GL_APPLE_fence", wine_glFinishFenceAPPLE },
13121   { "glFinishFenceNV", "GL_NV_fence", wine_glFinishFenceNV },
13122   { "glFinishObjectAPPLE", "GL_APPLE_fence", wine_glFinishObjectAPPLE },
13123   { "glFinishTextureSUNX", "GL_SUNX_constant_data", wine_glFinishTextureSUNX },
13124   { "glFlushMappedBufferRange", "GL_ARB_map_buffer_range", wine_glFlushMappedBufferRange },
13125   { "glFlushMappedBufferRangeAPPLE", "GL_APPLE_flush_buffer_range", wine_glFlushMappedBufferRangeAPPLE },
13126   { "glFlushMappedNamedBufferRangeEXT", "GL_EXT_direct_state_access", wine_glFlushMappedNamedBufferRangeEXT },
13127   { "glFlushPixelDataRangeNV", "GL_NV_pixel_data_range", wine_glFlushPixelDataRangeNV },
13128   { "glFlushRasterSGIX", "GL_SGIX_flush_raster", wine_glFlushRasterSGIX },
13129   { "glFlushVertexArrayRangeAPPLE", "GL_APPLE_vertex_array_range", wine_glFlushVertexArrayRangeAPPLE },
13130   { "glFlushVertexArrayRangeNV", "GL_NV_vertex_array_range", wine_glFlushVertexArrayRangeNV },
13131   { "glFogCoordFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glFogCoordFormatNV },
13132   { "glFogCoordPointer", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoordPointer },
13133   { "glFogCoordPointerEXT", "GL_EXT_fog_coord", wine_glFogCoordPointerEXT },
13134   { "glFogCoordPointerListIBM", "GL_IBM_vertex_array_lists", wine_glFogCoordPointerListIBM },
13135   { "glFogCoordd", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoordd },
13136   { "glFogCoorddEXT", "GL_EXT_fog_coord", wine_glFogCoorddEXT },
13137   { "glFogCoorddv", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoorddv },
13138   { "glFogCoorddvEXT", "GL_EXT_fog_coord", wine_glFogCoorddvEXT },
13139   { "glFogCoordf", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoordf },
13140   { "glFogCoordfEXT", "GL_EXT_fog_coord", wine_glFogCoordfEXT },
13141   { "glFogCoordfv", "GL_VERSION_1_4_DEPRECATED", wine_glFogCoordfv },
13142   { "glFogCoordfvEXT", "GL_EXT_fog_coord", wine_glFogCoordfvEXT },
13143   { "glFogCoordhNV", "GL_NV_half_float", wine_glFogCoordhNV },
13144   { "glFogCoordhvNV", "GL_NV_half_float", wine_glFogCoordhvNV },
13145   { "glFogFuncSGIS", "GL_SGIS_fog_function", wine_glFogFuncSGIS },
13146   { "glFragmentColorMaterialSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentColorMaterialSGIX },
13147   { "glFragmentLightModelfSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightModelfSGIX },
13148   { "glFragmentLightModelfvSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightModelfvSGIX },
13149   { "glFragmentLightModeliSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightModeliSGIX },
13150   { "glFragmentLightModelivSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightModelivSGIX },
13151   { "glFragmentLightfSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightfSGIX },
13152   { "glFragmentLightfvSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightfvSGIX },
13153   { "glFragmentLightiSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightiSGIX },
13154   { "glFragmentLightivSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentLightivSGIX },
13155   { "glFragmentMaterialfSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentMaterialfSGIX },
13156   { "glFragmentMaterialfvSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentMaterialfvSGIX },
13157   { "glFragmentMaterialiSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentMaterialiSGIX },
13158   { "glFragmentMaterialivSGIX", "GL_SGIX_fragment_lighting", wine_glFragmentMaterialivSGIX },
13159   { "glFrameTerminatorGREMEDY", "GL_GREMEDY_frame_terminator", wine_glFrameTerminatorGREMEDY },
13160   { "glFrameZoomSGIX", "GL_SGIX_framezoom", wine_glFrameZoomSGIX },
13161   { "glFramebufferDrawBufferEXT", "GL_EXT_direct_state_access", wine_glFramebufferDrawBufferEXT },
13162   { "glFramebufferDrawBuffersEXT", "GL_EXT_direct_state_access", wine_glFramebufferDrawBuffersEXT },
13163   { "glFramebufferParameteri", "GL_ARB_framebuffer_no_attachments", wine_glFramebufferParameteri },
13164   { "glFramebufferReadBufferEXT", "GL_EXT_direct_state_access", wine_glFramebufferReadBufferEXT },
13165   { "glFramebufferRenderbuffer", "GL_ARB_framebuffer_object", wine_glFramebufferRenderbuffer },
13166   { "glFramebufferRenderbufferEXT", "GL_EXT_framebuffer_object", wine_glFramebufferRenderbufferEXT },
13167   { "glFramebufferTexture", "GL_VERSION_3_2", wine_glFramebufferTexture },
13168   { "glFramebufferTexture1D", "GL_ARB_framebuffer_object", wine_glFramebufferTexture1D },
13169   { "glFramebufferTexture1DEXT", "GL_EXT_framebuffer_object", wine_glFramebufferTexture1DEXT },
13170   { "glFramebufferTexture2D", "GL_ARB_framebuffer_object", wine_glFramebufferTexture2D },
13171   { "glFramebufferTexture2DEXT", "GL_EXT_framebuffer_object", wine_glFramebufferTexture2DEXT },
13172   { "glFramebufferTexture3D", "GL_ARB_framebuffer_object", wine_glFramebufferTexture3D },
13173   { "glFramebufferTexture3DEXT", "GL_EXT_framebuffer_object", wine_glFramebufferTexture3DEXT },
13174   { "glFramebufferTextureARB", "GL_ARB_geometry_shader4", wine_glFramebufferTextureARB },
13175   { "glFramebufferTextureEXT", "GL_NV_geometry_program4", wine_glFramebufferTextureEXT },
13176   { "glFramebufferTextureFaceARB", "GL_ARB_geometry_shader4", wine_glFramebufferTextureFaceARB },
13177   { "glFramebufferTextureFaceEXT", "GL_NV_geometry_program4", wine_glFramebufferTextureFaceEXT },
13178   { "glFramebufferTextureLayer", "GL_ARB_framebuffer_object", wine_glFramebufferTextureLayer },
13179   { "glFramebufferTextureLayerARB", "GL_ARB_geometry_shader4", wine_glFramebufferTextureLayerARB },
13180   { "glFramebufferTextureLayerEXT", "GL_NV_geometry_program4", wine_glFramebufferTextureLayerEXT },
13181   { "glFreeObjectBufferATI", "GL_ATI_vertex_array_object", wine_glFreeObjectBufferATI },
13182   { "glGenAsyncMarkersSGIX", "GL_SGIX_async", wine_glGenAsyncMarkersSGIX },
13183   { "glGenBuffers", "GL_VERSION_1_5", wine_glGenBuffers },
13184   { "glGenBuffersARB", "GL_ARB_vertex_buffer_object", wine_glGenBuffersARB },
13185   { "glGenFencesAPPLE", "GL_APPLE_fence", wine_glGenFencesAPPLE },
13186   { "glGenFencesNV", "GL_NV_fence", wine_glGenFencesNV },
13187   { "glGenFragmentShadersATI", "GL_ATI_fragment_shader", wine_glGenFragmentShadersATI },
13188   { "glGenFramebuffers", "GL_ARB_framebuffer_object", wine_glGenFramebuffers },
13189   { "glGenFramebuffersEXT", "GL_EXT_framebuffer_object", wine_glGenFramebuffersEXT },
13190   { "glGenNamesAMD", "GL_AMD_name_gen_delete", wine_glGenNamesAMD },
13191   { "glGenOcclusionQueriesNV", "GL_NV_occlusion_query", wine_glGenOcclusionQueriesNV },
13192   { "glGenPathsNV", "GL_NV_path_rendering", wine_glGenPathsNV },
13193   { "glGenPerfMonitorsAMD", "GL_AMD_performance_monitor", wine_glGenPerfMonitorsAMD },
13194   { "glGenProgramPipelines", "GL_ARB_separate_shader_objects", wine_glGenProgramPipelines },
13195   { "glGenProgramsARB", "GL_ARB_vertex_program", wine_glGenProgramsARB },
13196   { "glGenProgramsNV", "GL_NV_vertex_program", wine_glGenProgramsNV },
13197   { "glGenQueries", "GL_VERSION_1_5", wine_glGenQueries },
13198   { "glGenQueriesARB", "GL_ARB_occlusion_query", wine_glGenQueriesARB },
13199   { "glGenRenderbuffers", "GL_ARB_framebuffer_object", wine_glGenRenderbuffers },
13200   { "glGenRenderbuffersEXT", "GL_EXT_framebuffer_object", wine_glGenRenderbuffersEXT },
13201   { "glGenSamplers", "GL_ARB_sampler_objects", wine_glGenSamplers },
13202   { "glGenSymbolsEXT", "GL_EXT_vertex_shader", wine_glGenSymbolsEXT },
13203   { "glGenTexturesEXT", "GL_EXT_texture_object", wine_glGenTexturesEXT },
13204   { "glGenTransformFeedbacks", "GL_ARB_transform_feedback2", wine_glGenTransformFeedbacks },
13205   { "glGenTransformFeedbacksNV", "GL_NV_transform_feedback2", wine_glGenTransformFeedbacksNV },
13206   { "glGenVertexArrays", "GL_ARB_vertex_array_object", wine_glGenVertexArrays },
13207   { "glGenVertexArraysAPPLE", "GL_APPLE_vertex_array_object", wine_glGenVertexArraysAPPLE },
13208   { "glGenVertexShadersEXT", "GL_EXT_vertex_shader", wine_glGenVertexShadersEXT },
13209   { "glGenerateMipmap", "GL_ARB_framebuffer_object", wine_glGenerateMipmap },
13210   { "glGenerateMipmapEXT", "GL_EXT_framebuffer_object", wine_glGenerateMipmapEXT },
13211   { "glGenerateMultiTexMipmapEXT", "GL_EXT_direct_state_access", wine_glGenerateMultiTexMipmapEXT },
13212   { "glGenerateTextureMipmapEXT", "GL_EXT_direct_state_access", wine_glGenerateTextureMipmapEXT },
13213   { "glGetActiveAtomicCounterBufferiv", "GL_ARB_shader_atomic_counters", wine_glGetActiveAtomicCounterBufferiv },
13214   { "glGetActiveAttrib", "GL_VERSION_2_0", wine_glGetActiveAttrib },
13215   { "glGetActiveAttribARB", "GL_ARB_vertex_shader", wine_glGetActiveAttribARB },
13216   { "glGetActiveSubroutineName", "GL_ARB_shader_subroutine", wine_glGetActiveSubroutineName },
13217   { "glGetActiveSubroutineUniformName", "GL_ARB_shader_subroutine", wine_glGetActiveSubroutineUniformName },
13218   { "glGetActiveSubroutineUniformiv", "GL_ARB_shader_subroutine", wine_glGetActiveSubroutineUniformiv },
13219   { "glGetActiveUniform", "GL_VERSION_2_0", wine_glGetActiveUniform },
13220   { "glGetActiveUniformARB", "GL_ARB_shader_objects", wine_glGetActiveUniformARB },
13221   { "glGetActiveUniformBlockName", "GL_ARB_uniform_buffer_object", wine_glGetActiveUniformBlockName },
13222   { "glGetActiveUniformBlockiv", "GL_ARB_uniform_buffer_object", wine_glGetActiveUniformBlockiv },
13223   { "glGetActiveUniformName", "GL_ARB_uniform_buffer_object", wine_glGetActiveUniformName },
13224   { "glGetActiveUniformsiv", "GL_ARB_uniform_buffer_object", wine_glGetActiveUniformsiv },
13225   { "glGetActiveVaryingNV", "GL_NV_transform_feedback", wine_glGetActiveVaryingNV },
13226   { "glGetArrayObjectfvATI", "GL_ATI_vertex_array_object", wine_glGetArrayObjectfvATI },
13227   { "glGetArrayObjectivATI", "GL_ATI_vertex_array_object", wine_glGetArrayObjectivATI },
13228   { "glGetAttachedObjectsARB", "GL_ARB_shader_objects", wine_glGetAttachedObjectsARB },
13229   { "glGetAttachedShaders", "GL_VERSION_2_0", wine_glGetAttachedShaders },
13230   { "glGetAttribLocation", "GL_VERSION_2_0", wine_glGetAttribLocation },
13231   { "glGetAttribLocationARB", "GL_ARB_vertex_shader", wine_glGetAttribLocationARB },
13232   { "glGetBooleanIndexedvEXT", "GL_EXT_draw_buffers2", wine_glGetBooleanIndexedvEXT },
13233   { "glGetBooleani_v", "GL_VERSION_3_0", wine_glGetBooleani_v },
13234   { "glGetBufferParameteri64v", "GL_VERSION_3_2", wine_glGetBufferParameteri64v },
13235   { "glGetBufferParameteriv", "GL_VERSION_1_5", wine_glGetBufferParameteriv },
13236   { "glGetBufferParameterivARB", "GL_ARB_vertex_buffer_object", wine_glGetBufferParameterivARB },
13237   { "glGetBufferParameterui64vNV", "GL_NV_shader_buffer_load", wine_glGetBufferParameterui64vNV },
13238   { "glGetBufferPointerv", "GL_VERSION_1_5", wine_glGetBufferPointerv },
13239   { "glGetBufferPointervARB", "GL_ARB_vertex_buffer_object", wine_glGetBufferPointervARB },
13240   { "glGetBufferSubData", "GL_VERSION_1_5", wine_glGetBufferSubData },
13241   { "glGetBufferSubDataARB", "GL_ARB_vertex_buffer_object", wine_glGetBufferSubDataARB },
13242   { "glGetColorTable", "GL_VERSION_1_2_DEPRECATED", wine_glGetColorTable },
13243   { "glGetColorTableEXT", "GL_EXT_paletted_texture", wine_glGetColorTableEXT },
13244   { "glGetColorTableParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glGetColorTableParameterfv },
13245   { "glGetColorTableParameterfvEXT", "GL_EXT_paletted_texture", wine_glGetColorTableParameterfvEXT },
13246   { "glGetColorTableParameterfvSGI", "GL_SGI_color_table", wine_glGetColorTableParameterfvSGI },
13247   { "glGetColorTableParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glGetColorTableParameteriv },
13248   { "glGetColorTableParameterivEXT", "GL_EXT_paletted_texture", wine_glGetColorTableParameterivEXT },
13249   { "glGetColorTableParameterivSGI", "GL_SGI_color_table", wine_glGetColorTableParameterivSGI },
13250   { "glGetColorTableSGI", "GL_SGI_color_table", wine_glGetColorTableSGI },
13251   { "glGetCombinerInputParameterfvNV", "GL_NV_register_combiners", wine_glGetCombinerInputParameterfvNV },
13252   { "glGetCombinerInputParameterivNV", "GL_NV_register_combiners", wine_glGetCombinerInputParameterivNV },
13253   { "glGetCombinerOutputParameterfvNV", "GL_NV_register_combiners", wine_glGetCombinerOutputParameterfvNV },
13254   { "glGetCombinerOutputParameterivNV", "GL_NV_register_combiners", wine_glGetCombinerOutputParameterivNV },
13255   { "glGetCombinerStageParameterfvNV", "GL_NV_register_combiners2", wine_glGetCombinerStageParameterfvNV },
13256   { "glGetCompressedMultiTexImageEXT", "GL_EXT_direct_state_access", wine_glGetCompressedMultiTexImageEXT },
13257   { "glGetCompressedTexImage", "GL_VERSION_1_3", wine_glGetCompressedTexImage },
13258   { "glGetCompressedTexImageARB", "GL_ARB_texture_compression", wine_glGetCompressedTexImageARB },
13259   { "glGetCompressedTextureImageEXT", "GL_EXT_direct_state_access", wine_glGetCompressedTextureImageEXT },
13260   { "glGetConvolutionFilter", "GL_VERSION_1_2_DEPRECATED", wine_glGetConvolutionFilter },
13261   { "glGetConvolutionFilterEXT", "GL_EXT_convolution", wine_glGetConvolutionFilterEXT },
13262   { "glGetConvolutionParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glGetConvolutionParameterfv },
13263   { "glGetConvolutionParameterfvEXT", "GL_EXT_convolution", wine_glGetConvolutionParameterfvEXT },
13264   { "glGetConvolutionParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glGetConvolutionParameteriv },
13265   { "glGetConvolutionParameterivEXT", "GL_EXT_convolution", wine_glGetConvolutionParameterivEXT },
13266   { "glGetDebugMessageLog", "GL_KHR_debug", wine_glGetDebugMessageLog },
13267   { "glGetDebugMessageLogAMD", "GL_AMD_debug_output", wine_glGetDebugMessageLogAMD },
13268   { "glGetDebugMessageLogARB", "GL_ARB_debug_output", wine_glGetDebugMessageLogARB },
13269   { "glGetDetailTexFuncSGIS", "GL_SGIS_detail_texture", wine_glGetDetailTexFuncSGIS },
13270   { "glGetDoubleIndexedvEXT", "GL_EXT_direct_state_access", wine_glGetDoubleIndexedvEXT },
13271   { "glGetDoublei_v", "GL_ARB_viewport_array", wine_glGetDoublei_v },
13272   { "glGetFenceivNV", "GL_NV_fence", wine_glGetFenceivNV },
13273   { "glGetFinalCombinerInputParameterfvNV", "GL_NV_register_combiners", wine_glGetFinalCombinerInputParameterfvNV },
13274   { "glGetFinalCombinerInputParameterivNV", "GL_NV_register_combiners", wine_glGetFinalCombinerInputParameterivNV },
13275   { "glGetFloatIndexedvEXT", "GL_EXT_direct_state_access", wine_glGetFloatIndexedvEXT },
13276   { "glGetFloati_v", "GL_ARB_viewport_array", wine_glGetFloati_v },
13277   { "glGetFogFuncSGIS", "GL_SGIS_fog_function", wine_glGetFogFuncSGIS },
13278   { "glGetFragDataIndex", "GL_ARB_blend_func_extended", wine_glGetFragDataIndex },
13279   { "glGetFragDataLocation", "GL_VERSION_3_0", wine_glGetFragDataLocation },
13280   { "glGetFragDataLocationEXT", "GL_EXT_gpu_shader4", wine_glGetFragDataLocationEXT },
13281   { "glGetFragmentLightfvSGIX", "GL_SGIX_fragment_lighting", wine_glGetFragmentLightfvSGIX },
13282   { "glGetFragmentLightivSGIX", "GL_SGIX_fragment_lighting", wine_glGetFragmentLightivSGIX },
13283   { "glGetFragmentMaterialfvSGIX", "GL_SGIX_fragment_lighting", wine_glGetFragmentMaterialfvSGIX },
13284   { "glGetFragmentMaterialivSGIX", "GL_SGIX_fragment_lighting", wine_glGetFragmentMaterialivSGIX },
13285   { "glGetFramebufferAttachmentParameteriv", "GL_ARB_framebuffer_object", wine_glGetFramebufferAttachmentParameteriv },
13286   { "glGetFramebufferAttachmentParameterivEXT", "GL_EXT_framebuffer_object", wine_glGetFramebufferAttachmentParameterivEXT },
13287   { "glGetFramebufferParameteriv", "GL_ARB_framebuffer_no_attachments", wine_glGetFramebufferParameteriv },
13288   { "glGetFramebufferParameterivEXT", "GL_EXT_direct_state_access", wine_glGetFramebufferParameterivEXT },
13289   { "glGetGraphicsResetStatusARB", "GL_ARB_robustness", wine_glGetGraphicsResetStatusARB },
13290   { "glGetHandleARB", "GL_ARB_shader_objects", wine_glGetHandleARB },
13291   { "glGetHistogram", "GL_VERSION_1_2_DEPRECATED", wine_glGetHistogram },
13292   { "glGetHistogramEXT", "GL_EXT_histogram", wine_glGetHistogramEXT },
13293   { "glGetHistogramParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glGetHistogramParameterfv },
13294   { "glGetHistogramParameterfvEXT", "GL_EXT_histogram", wine_glGetHistogramParameterfvEXT },
13295   { "glGetHistogramParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glGetHistogramParameteriv },
13296   { "glGetHistogramParameterivEXT", "GL_EXT_histogram", wine_glGetHistogramParameterivEXT },
13297   { "glGetImageHandleNV", "GL_NV_bindless_texture", wine_glGetImageHandleNV },
13298   { "glGetImageTransformParameterfvHP", "GL_HP_image_transform", wine_glGetImageTransformParameterfvHP },
13299   { "glGetImageTransformParameterivHP", "GL_HP_image_transform", wine_glGetImageTransformParameterivHP },
13300   { "glGetInfoLogARB", "GL_ARB_shader_objects", wine_glGetInfoLogARB },
13301   { "glGetInstrumentsSGIX", "GL_SGIX_instruments", wine_glGetInstrumentsSGIX },
13302   { "glGetInteger64i_v", "GL_VERSION_3_2", wine_glGetInteger64i_v },
13303   { "glGetInteger64v", "GL_ARB_sync", wine_glGetInteger64v },
13304   { "glGetIntegerIndexedvEXT", "GL_EXT_draw_buffers2", wine_glGetIntegerIndexedvEXT },
13305   { "glGetIntegeri_v", "GL_VERSION_3_0", wine_glGetIntegeri_v },
13306   { "glGetIntegerui64i_vNV", "GL_NV_vertex_buffer_unified_memory", wine_glGetIntegerui64i_vNV },
13307   { "glGetIntegerui64vNV", "GL_NV_shader_buffer_load", wine_glGetIntegerui64vNV },
13308   { "glGetInternalformati64v", "GL_ARB_internalformat_query2", wine_glGetInternalformati64v },
13309   { "glGetInternalformativ", "GL_ARB_internalformat_query", wine_glGetInternalformativ },
13310   { "glGetInvariantBooleanvEXT", "GL_EXT_vertex_shader", wine_glGetInvariantBooleanvEXT },
13311   { "glGetInvariantFloatvEXT", "GL_EXT_vertex_shader", wine_glGetInvariantFloatvEXT },
13312   { "glGetInvariantIntegervEXT", "GL_EXT_vertex_shader", wine_glGetInvariantIntegervEXT },
13313   { "glGetListParameterfvSGIX", "GL_SGIX_list_priority", wine_glGetListParameterfvSGIX },
13314   { "glGetListParameterivSGIX", "GL_SGIX_list_priority", wine_glGetListParameterivSGIX },
13315   { "glGetLocalConstantBooleanvEXT", "GL_EXT_vertex_shader", wine_glGetLocalConstantBooleanvEXT },
13316   { "glGetLocalConstantFloatvEXT", "GL_EXT_vertex_shader", wine_glGetLocalConstantFloatvEXT },
13317   { "glGetLocalConstantIntegervEXT", "GL_EXT_vertex_shader", wine_glGetLocalConstantIntegervEXT },
13318   { "glGetMapAttribParameterfvNV", "GL_NV_evaluators", wine_glGetMapAttribParameterfvNV },
13319   { "glGetMapAttribParameterivNV", "GL_NV_evaluators", wine_glGetMapAttribParameterivNV },
13320   { "glGetMapControlPointsNV", "GL_NV_evaluators", wine_glGetMapControlPointsNV },
13321   { "glGetMapParameterfvNV", "GL_NV_evaluators", wine_glGetMapParameterfvNV },
13322   { "glGetMapParameterivNV", "GL_NV_evaluators", wine_glGetMapParameterivNV },
13323   { "glGetMinmax", "GL_VERSION_1_2_DEPRECATED", wine_glGetMinmax },
13324   { "glGetMinmaxEXT", "GL_EXT_histogram", wine_glGetMinmaxEXT },
13325   { "glGetMinmaxParameterfv", "GL_VERSION_1_2_DEPRECATED", wine_glGetMinmaxParameterfv },
13326   { "glGetMinmaxParameterfvEXT", "GL_EXT_histogram", wine_glGetMinmaxParameterfvEXT },
13327   { "glGetMinmaxParameteriv", "GL_VERSION_1_2_DEPRECATED", wine_glGetMinmaxParameteriv },
13328   { "glGetMinmaxParameterivEXT", "GL_EXT_histogram", wine_glGetMinmaxParameterivEXT },
13329   { "glGetMultiTexEnvfvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexEnvfvEXT },
13330   { "glGetMultiTexEnvivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexEnvivEXT },
13331   { "glGetMultiTexGendvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexGendvEXT },
13332   { "glGetMultiTexGenfvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexGenfvEXT },
13333   { "glGetMultiTexGenivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexGenivEXT },
13334   { "glGetMultiTexImageEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexImageEXT },
13335   { "glGetMultiTexLevelParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexLevelParameterfvEXT },
13336   { "glGetMultiTexLevelParameterivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexLevelParameterivEXT },
13337   { "glGetMultiTexParameterIivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexParameterIivEXT },
13338   { "glGetMultiTexParameterIuivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexParameterIuivEXT },
13339   { "glGetMultiTexParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexParameterfvEXT },
13340   { "glGetMultiTexParameterivEXT", "GL_EXT_direct_state_access", wine_glGetMultiTexParameterivEXT },
13341   { "glGetMultisamplefv", "GL_ARB_texture_multisample", wine_glGetMultisamplefv },
13342   { "glGetMultisamplefvNV", "GL_NV_explicit_multisample", wine_glGetMultisamplefvNV },
13343   { "glGetNamedBufferParameterivEXT", "GL_EXT_direct_state_access", wine_glGetNamedBufferParameterivEXT },
13344   { "glGetNamedBufferParameterui64vNV", "GL_NV_shader_buffer_load", wine_glGetNamedBufferParameterui64vNV },
13345   { "glGetNamedBufferPointervEXT", "GL_EXT_direct_state_access", wine_glGetNamedBufferPointervEXT },
13346   { "glGetNamedBufferSubDataEXT", "GL_EXT_direct_state_access", wine_glGetNamedBufferSubDataEXT },
13347   { "glGetNamedFramebufferAttachmentParameterivEXT", "GL_EXT_direct_state_access", wine_glGetNamedFramebufferAttachmentParameterivEXT },
13348   { "glGetNamedFramebufferParameterivEXT", "GL_ARB_framebuffer_no_attachments", wine_glGetNamedFramebufferParameterivEXT },
13349   { "glGetNamedProgramLocalParameterIivEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramLocalParameterIivEXT },
13350   { "glGetNamedProgramLocalParameterIuivEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramLocalParameterIuivEXT },
13351   { "glGetNamedProgramLocalParameterdvEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramLocalParameterdvEXT },
13352   { "glGetNamedProgramLocalParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramLocalParameterfvEXT },
13353   { "glGetNamedProgramStringEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramStringEXT },
13354   { "glGetNamedProgramivEXT", "GL_EXT_direct_state_access", wine_glGetNamedProgramivEXT },
13355   { "glGetNamedRenderbufferParameterivEXT", "GL_EXT_direct_state_access", wine_glGetNamedRenderbufferParameterivEXT },
13356   { "glGetNamedStringARB", "GL_ARB_shading_language_include", wine_glGetNamedStringARB },
13357   { "glGetNamedStringivARB", "GL_ARB_shading_language_include", wine_glGetNamedStringivARB },
13358   { "glGetObjectBufferfvATI", "GL_ATI_vertex_array_object", wine_glGetObjectBufferfvATI },
13359   { "glGetObjectBufferivATI", "GL_ATI_vertex_array_object", wine_glGetObjectBufferivATI },
13360   { "glGetObjectLabel", "GL_KHR_debug", wine_glGetObjectLabel },
13361   { "glGetObjectParameterfvARB", "GL_ARB_shader_objects", wine_glGetObjectParameterfvARB },
13362   { "glGetObjectParameterivAPPLE", "GL_APPLE_object_purgeable", wine_glGetObjectParameterivAPPLE },
13363   { "glGetObjectParameterivARB", "GL_ARB_shader_objects", wine_glGetObjectParameterivARB },
13364   { "glGetObjectPtrLabel", "GL_KHR_debug", wine_glGetObjectPtrLabel },
13365   { "glGetOcclusionQueryivNV", "GL_NV_occlusion_query", wine_glGetOcclusionQueryivNV },
13366   { "glGetOcclusionQueryuivNV", "GL_NV_occlusion_query", wine_glGetOcclusionQueryuivNV },
13367   { "glGetPathColorGenfvNV", "GL_NV_path_rendering", wine_glGetPathColorGenfvNV },
13368   { "glGetPathColorGenivNV", "GL_NV_path_rendering", wine_glGetPathColorGenivNV },
13369   { "glGetPathCommandsNV", "GL_NV_path_rendering", wine_glGetPathCommandsNV },
13370   { "glGetPathCoordsNV", "GL_NV_path_rendering", wine_glGetPathCoordsNV },
13371   { "glGetPathDashArrayNV", "GL_NV_path_rendering", wine_glGetPathDashArrayNV },
13372   { "glGetPathLengthNV", "GL_NV_path_rendering", wine_glGetPathLengthNV },
13373   { "glGetPathMetricRangeNV", "GL_NV_path_rendering", wine_glGetPathMetricRangeNV },
13374   { "glGetPathMetricsNV", "GL_NV_path_rendering", wine_glGetPathMetricsNV },
13375   { "glGetPathParameterfvNV", "GL_NV_path_rendering", wine_glGetPathParameterfvNV },
13376   { "glGetPathParameterivNV", "GL_NV_path_rendering", wine_glGetPathParameterivNV },
13377   { "glGetPathSpacingNV", "GL_NV_path_rendering", wine_glGetPathSpacingNV },
13378   { "glGetPathTexGenfvNV", "GL_NV_path_rendering", wine_glGetPathTexGenfvNV },
13379   { "glGetPathTexGenivNV", "GL_NV_path_rendering", wine_glGetPathTexGenivNV },
13380   { "glGetPerfMonitorCounterDataAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorCounterDataAMD },
13381   { "glGetPerfMonitorCounterInfoAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorCounterInfoAMD },
13382   { "glGetPerfMonitorCounterStringAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorCounterStringAMD },
13383   { "glGetPerfMonitorCountersAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorCountersAMD },
13384   { "glGetPerfMonitorGroupStringAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorGroupStringAMD },
13385   { "glGetPerfMonitorGroupsAMD", "GL_AMD_performance_monitor", wine_glGetPerfMonitorGroupsAMD },
13386   { "glGetPixelTexGenParameterfvSGIS", "GL_SGIS_pixel_texture", wine_glGetPixelTexGenParameterfvSGIS },
13387   { "glGetPixelTexGenParameterivSGIS", "GL_SGIS_pixel_texture", wine_glGetPixelTexGenParameterivSGIS },
13388   { "glGetPointerIndexedvEXT", "GL_EXT_direct_state_access", wine_glGetPointerIndexedvEXT },
13389   { "glGetPointervEXT", "GL_EXT_vertex_array", wine_glGetPointervEXT },
13390   { "glGetProgramBinary", "GL_ARB_get_program_binary", wine_glGetProgramBinary },
13391   { "glGetProgramEnvParameterIivNV", "GL_NV_gpu_program4", wine_glGetProgramEnvParameterIivNV },
13392   { "glGetProgramEnvParameterIuivNV", "GL_NV_gpu_program4", wine_glGetProgramEnvParameterIuivNV },
13393   { "glGetProgramEnvParameterdvARB", "GL_ARB_vertex_program", wine_glGetProgramEnvParameterdvARB },
13394   { "glGetProgramEnvParameterfvARB", "GL_ARB_vertex_program", wine_glGetProgramEnvParameterfvARB },
13395   { "glGetProgramInfoLog", "GL_VERSION_2_0", wine_glGetProgramInfoLog },
13396   { "glGetProgramInterfaceiv", "GL_ARB_program_interface_query", wine_glGetProgramInterfaceiv },
13397   { "glGetProgramLocalParameterIivNV", "GL_NV_gpu_program4", wine_glGetProgramLocalParameterIivNV },
13398   { "glGetProgramLocalParameterIuivNV", "GL_NV_gpu_program4", wine_glGetProgramLocalParameterIuivNV },
13399   { "glGetProgramLocalParameterdvARB", "GL_ARB_vertex_program", wine_glGetProgramLocalParameterdvARB },
13400   { "glGetProgramLocalParameterfvARB", "GL_ARB_vertex_program", wine_glGetProgramLocalParameterfvARB },
13401   { "glGetProgramNamedParameterdvNV", "GL_NV_fragment_program", wine_glGetProgramNamedParameterdvNV },
13402   { "glGetProgramNamedParameterfvNV", "GL_NV_fragment_program", wine_glGetProgramNamedParameterfvNV },
13403   { "glGetProgramParameterdvNV", "GL_NV_vertex_program", wine_glGetProgramParameterdvNV },
13404   { "glGetProgramParameterfvNV", "GL_NV_vertex_program", wine_glGetProgramParameterfvNV },
13405   { "glGetProgramPipelineInfoLog", "GL_ARB_separate_shader_objects", wine_glGetProgramPipelineInfoLog },
13406   { "glGetProgramPipelineiv", "GL_ARB_separate_shader_objects", wine_glGetProgramPipelineiv },
13407   { "glGetProgramResourceIndex", "GL_ARB_program_interface_query", wine_glGetProgramResourceIndex },
13408   { "glGetProgramResourceLocation", "GL_ARB_program_interface_query", wine_glGetProgramResourceLocation },
13409   { "glGetProgramResourceLocationIndex", "GL_ARB_program_interface_query", wine_glGetProgramResourceLocationIndex },
13410   { "glGetProgramResourceName", "GL_ARB_program_interface_query", wine_glGetProgramResourceName },
13411   { "glGetProgramResourceiv", "GL_ARB_program_interface_query", wine_glGetProgramResourceiv },
13412   { "glGetProgramStageiv", "GL_ARB_shader_subroutine", wine_glGetProgramStageiv },
13413   { "glGetProgramStringARB", "GL_ARB_vertex_program", wine_glGetProgramStringARB },
13414   { "glGetProgramStringNV", "GL_NV_vertex_program", wine_glGetProgramStringNV },
13415   { "glGetProgramSubroutineParameteruivNV", "GL_NV_gpu_program5", wine_glGetProgramSubroutineParameteruivNV },
13416   { "glGetProgramiv", "GL_VERSION_2_0", wine_glGetProgramiv },
13417   { "glGetProgramivARB", "GL_ARB_vertex_program", wine_glGetProgramivARB },
13418   { "glGetProgramivNV", "GL_NV_vertex_program", wine_glGetProgramivNV },
13419   { "glGetQueryIndexediv", "GL_ARB_transform_feedback3", wine_glGetQueryIndexediv },
13420   { "glGetQueryObjecti64v", "GL_ARB_timer_query", wine_glGetQueryObjecti64v },
13421   { "glGetQueryObjecti64vEXT", "GL_EXT_timer_query", wine_glGetQueryObjecti64vEXT },
13422   { "glGetQueryObjectiv", "GL_VERSION_1_5", wine_glGetQueryObjectiv },
13423   { "glGetQueryObjectivARB", "GL_ARB_occlusion_query", wine_glGetQueryObjectivARB },
13424   { "glGetQueryObjectui64v", "GL_ARB_timer_query", wine_glGetQueryObjectui64v },
13425   { "glGetQueryObjectui64vEXT", "GL_EXT_timer_query", wine_glGetQueryObjectui64vEXT },
13426   { "glGetQueryObjectuiv", "GL_VERSION_1_5", wine_glGetQueryObjectuiv },
13427   { "glGetQueryObjectuivARB", "GL_ARB_occlusion_query", wine_glGetQueryObjectuivARB },
13428   { "glGetQueryiv", "GL_VERSION_1_5", wine_glGetQueryiv },
13429   { "glGetQueryivARB", "GL_ARB_occlusion_query", wine_glGetQueryivARB },
13430   { "glGetRenderbufferParameteriv", "GL_ARB_framebuffer_object", wine_glGetRenderbufferParameteriv },
13431   { "glGetRenderbufferParameterivEXT", "GL_EXT_framebuffer_object", wine_glGetRenderbufferParameterivEXT },
13432   { "glGetSamplerParameterIiv", "GL_ARB_sampler_objects", wine_glGetSamplerParameterIiv },
13433   { "glGetSamplerParameterIuiv", "GL_ARB_sampler_objects", wine_glGetSamplerParameterIuiv },
13434   { "glGetSamplerParameterfv", "GL_ARB_sampler_objects", wine_glGetSamplerParameterfv },
13435   { "glGetSamplerParameteriv", "GL_ARB_sampler_objects", wine_glGetSamplerParameteriv },
13436   { "glGetSeparableFilter", "GL_VERSION_1_2_DEPRECATED", wine_glGetSeparableFilter },
13437   { "glGetSeparableFilterEXT", "GL_EXT_convolution", wine_glGetSeparableFilterEXT },
13438   { "glGetShaderInfoLog", "GL_VERSION_2_0", wine_glGetShaderInfoLog },
13439   { "glGetShaderPrecisionFormat", "GL_ARB_ES2_compatibility", wine_glGetShaderPrecisionFormat },
13440   { "glGetShaderSource", "GL_VERSION_2_0", wine_glGetShaderSource },
13441   { "glGetShaderSourceARB", "GL_ARB_shader_objects", wine_glGetShaderSourceARB },
13442   { "glGetShaderiv", "GL_VERSION_2_0", wine_glGetShaderiv },
13443   { "glGetSharpenTexFuncSGIS", "GL_SGIS_sharpen_texture", wine_glGetSharpenTexFuncSGIS },
13444   { "glGetStringi", "GL_VERSION_3_0", wine_glGetStringi },
13445   { "glGetSubroutineIndex", "GL_ARB_shader_subroutine", wine_glGetSubroutineIndex },
13446   { "glGetSubroutineUniformLocation", "GL_ARB_shader_subroutine", wine_glGetSubroutineUniformLocation },
13447   { "glGetSynciv", "GL_ARB_sync", wine_glGetSynciv },
13448   { "glGetTexBumpParameterfvATI", "GL_ATI_envmap_bumpmap", wine_glGetTexBumpParameterfvATI },
13449   { "glGetTexBumpParameterivATI", "GL_ATI_envmap_bumpmap", wine_glGetTexBumpParameterivATI },
13450   { "glGetTexFilterFuncSGIS", "GL_SGIS_texture_filter4", wine_glGetTexFilterFuncSGIS },
13451   { "glGetTexParameterIiv", "GL_VERSION_3_0", wine_glGetTexParameterIiv },
13452   { "glGetTexParameterIivEXT", "GL_EXT_texture_integer", wine_glGetTexParameterIivEXT },
13453   { "glGetTexParameterIuiv", "GL_VERSION_3_0", wine_glGetTexParameterIuiv },
13454   { "glGetTexParameterIuivEXT", "GL_EXT_texture_integer", wine_glGetTexParameterIuivEXT },
13455   { "glGetTexParameterPointervAPPLE", "GL_APPLE_texture_range", wine_glGetTexParameterPointervAPPLE },
13456   { "glGetTextureHandleNV", "GL_NV_bindless_texture", wine_glGetTextureHandleNV },
13457   { "glGetTextureImageEXT", "GL_EXT_direct_state_access", wine_glGetTextureImageEXT },
13458   { "glGetTextureLevelParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetTextureLevelParameterfvEXT },
13459   { "glGetTextureLevelParameterivEXT", "GL_EXT_direct_state_access", wine_glGetTextureLevelParameterivEXT },
13460   { "glGetTextureParameterIivEXT", "GL_EXT_direct_state_access", wine_glGetTextureParameterIivEXT },
13461   { "glGetTextureParameterIuivEXT", "GL_EXT_direct_state_access", wine_glGetTextureParameterIuivEXT },
13462   { "glGetTextureParameterfvEXT", "GL_EXT_direct_state_access", wine_glGetTextureParameterfvEXT },
13463   { "glGetTextureParameterivEXT", "GL_EXT_direct_state_access", wine_glGetTextureParameterivEXT },
13464   { "glGetTextureSamplerHandleNV", "GL_NV_bindless_texture", wine_glGetTextureSamplerHandleNV },
13465   { "glGetTrackMatrixivNV", "GL_NV_vertex_program", wine_glGetTrackMatrixivNV },
13466   { "glGetTransformFeedbackVarying", "GL_VERSION_3_0", wine_glGetTransformFeedbackVarying },
13467   { "glGetTransformFeedbackVaryingEXT", "GL_EXT_transform_feedback", wine_glGetTransformFeedbackVaryingEXT },
13468   { "glGetTransformFeedbackVaryingNV", "GL_NV_transform_feedback", wine_glGetTransformFeedbackVaryingNV },
13469   { "glGetUniformBlockIndex", "GL_ARB_uniform_buffer_object", wine_glGetUniformBlockIndex },
13470   { "glGetUniformBufferSizeEXT", "GL_EXT_bindable_uniform", wine_glGetUniformBufferSizeEXT },
13471   { "glGetUniformIndices", "GL_ARB_uniform_buffer_object", wine_glGetUniformIndices },
13472   { "glGetUniformLocation", "GL_VERSION_2_0", wine_glGetUniformLocation },
13473   { "glGetUniformLocationARB", "GL_ARB_shader_objects", wine_glGetUniformLocationARB },
13474   { "glGetUniformOffsetEXT", "GL_EXT_bindable_uniform", wine_glGetUniformOffsetEXT },
13475   { "glGetUniformSubroutineuiv", "GL_ARB_shader_subroutine", wine_glGetUniformSubroutineuiv },
13476   { "glGetUniformdv", "GL_ARB_gpu_shader_fp64", wine_glGetUniformdv },
13477   { "glGetUniformfv", "GL_VERSION_2_0", wine_glGetUniformfv },
13478   { "glGetUniformfvARB", "GL_ARB_shader_objects", wine_glGetUniformfvARB },
13479   { "glGetUniformi64vNV", "GL_NV_gpu_shader5", wine_glGetUniformi64vNV },
13480   { "glGetUniformiv", "GL_VERSION_2_0", wine_glGetUniformiv },
13481   { "glGetUniformivARB", "GL_ARB_shader_objects", wine_glGetUniformivARB },
13482   { "glGetUniformui64vNV", "GL_NV_shader_buffer_load", wine_glGetUniformui64vNV },
13483   { "glGetUniformuiv", "GL_VERSION_3_0", wine_glGetUniformuiv },
13484   { "glGetUniformuivEXT", "GL_EXT_gpu_shader4", wine_glGetUniformuivEXT },
13485   { "glGetVariantArrayObjectfvATI", "GL_ATI_vertex_array_object", wine_glGetVariantArrayObjectfvATI },
13486   { "glGetVariantArrayObjectivATI", "GL_ATI_vertex_array_object", wine_glGetVariantArrayObjectivATI },
13487   { "glGetVariantBooleanvEXT", "GL_EXT_vertex_shader", wine_glGetVariantBooleanvEXT },
13488   { "glGetVariantFloatvEXT", "GL_EXT_vertex_shader", wine_glGetVariantFloatvEXT },
13489   { "glGetVariantIntegervEXT", "GL_EXT_vertex_shader", wine_glGetVariantIntegervEXT },
13490   { "glGetVariantPointervEXT", "GL_EXT_vertex_shader", wine_glGetVariantPointervEXT },
13491   { "glGetVaryingLocationNV", "GL_NV_transform_feedback", wine_glGetVaryingLocationNV },
13492   { "glGetVertexAttribArrayObjectfvATI", "GL_ATI_vertex_attrib_array_object", wine_glGetVertexAttribArrayObjectfvATI },
13493   { "glGetVertexAttribArrayObjectivATI", "GL_ATI_vertex_attrib_array_object", wine_glGetVertexAttribArrayObjectivATI },
13494   { "glGetVertexAttribIiv", "GL_VERSION_3_0", wine_glGetVertexAttribIiv },
13495   { "glGetVertexAttribIivEXT", "GL_NV_vertex_program4", wine_glGetVertexAttribIivEXT },
13496   { "glGetVertexAttribIuiv", "GL_VERSION_3_0", wine_glGetVertexAttribIuiv },
13497   { "glGetVertexAttribIuivEXT", "GL_NV_vertex_program4", wine_glGetVertexAttribIuivEXT },
13498   { "glGetVertexAttribLdv", "GL_ARB_vertex_attrib_64bit", wine_glGetVertexAttribLdv },
13499   { "glGetVertexAttribLdvEXT", "GL_EXT_vertex_attrib_64bit", wine_glGetVertexAttribLdvEXT },
13500   { "glGetVertexAttribLi64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glGetVertexAttribLi64vNV },
13501   { "glGetVertexAttribLui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glGetVertexAttribLui64vNV },
13502   { "glGetVertexAttribPointerv", "GL_VERSION_2_0", wine_glGetVertexAttribPointerv },
13503   { "glGetVertexAttribPointervARB", "GL_ARB_vertex_program", wine_glGetVertexAttribPointervARB },
13504   { "glGetVertexAttribPointervNV", "GL_NV_vertex_program", wine_glGetVertexAttribPointervNV },
13505   { "glGetVertexAttribdv", "GL_VERSION_2_0", wine_glGetVertexAttribdv },
13506   { "glGetVertexAttribdvARB", "GL_ARB_vertex_program", wine_glGetVertexAttribdvARB },
13507   { "glGetVertexAttribdvNV", "GL_NV_vertex_program", wine_glGetVertexAttribdvNV },
13508   { "glGetVertexAttribfv", "GL_VERSION_2_0", wine_glGetVertexAttribfv },
13509   { "glGetVertexAttribfvARB", "GL_ARB_vertex_program", wine_glGetVertexAttribfvARB },
13510   { "glGetVertexAttribfvNV", "GL_NV_vertex_program", wine_glGetVertexAttribfvNV },
13511   { "glGetVertexAttribiv", "GL_VERSION_2_0", wine_glGetVertexAttribiv },
13512   { "glGetVertexAttribivARB", "GL_ARB_vertex_program", wine_glGetVertexAttribivARB },
13513   { "glGetVertexAttribivNV", "GL_NV_vertex_program", wine_glGetVertexAttribivNV },
13514   { "glGetVideoCaptureStreamdvNV", "GL_NV_video_capture", wine_glGetVideoCaptureStreamdvNV },
13515   { "glGetVideoCaptureStreamfvNV", "GL_NV_video_capture", wine_glGetVideoCaptureStreamfvNV },
13516   { "glGetVideoCaptureStreamivNV", "GL_NV_video_capture", wine_glGetVideoCaptureStreamivNV },
13517   { "glGetVideoCaptureivNV", "GL_NV_video_capture", wine_glGetVideoCaptureivNV },
13518   { "glGetVideoi64vNV", "GL_NV_present_video", wine_glGetVideoi64vNV },
13519   { "glGetVideoivNV", "GL_NV_present_video", wine_glGetVideoivNV },
13520   { "glGetVideoui64vNV", "GL_NV_present_video", wine_glGetVideoui64vNV },
13521   { "glGetVideouivNV", "GL_NV_present_video", wine_glGetVideouivNV },
13522   { "glGetnColorTableARB", "GL_ARB_robustness", wine_glGetnColorTableARB },
13523   { "glGetnCompressedTexImageARB", "GL_ARB_robustness", wine_glGetnCompressedTexImageARB },
13524   { "glGetnConvolutionFilterARB", "GL_ARB_robustness", wine_glGetnConvolutionFilterARB },
13525   { "glGetnHistogramARB", "GL_ARB_robustness", wine_glGetnHistogramARB },
13526   { "glGetnMapdvARB", "GL_ARB_robustness", wine_glGetnMapdvARB },
13527   { "glGetnMapfvARB", "GL_ARB_robustness", wine_glGetnMapfvARB },
13528   { "glGetnMapivARB", "GL_ARB_robustness", wine_glGetnMapivARB },
13529   { "glGetnMinmaxARB", "GL_ARB_robustness", wine_glGetnMinmaxARB },
13530   { "glGetnPixelMapfvARB", "GL_ARB_robustness", wine_glGetnPixelMapfvARB },
13531   { "glGetnPixelMapuivARB", "GL_ARB_robustness", wine_glGetnPixelMapuivARB },
13532   { "glGetnPixelMapusvARB", "GL_ARB_robustness", wine_glGetnPixelMapusvARB },
13533   { "glGetnPolygonStippleARB", "GL_ARB_robustness", wine_glGetnPolygonStippleARB },
13534   { "glGetnSeparableFilterARB", "GL_ARB_robustness", wine_glGetnSeparableFilterARB },
13535   { "glGetnTexImageARB", "GL_ARB_robustness", wine_glGetnTexImageARB },
13536   { "glGetnUniformdvARB", "GL_ARB_robustness", wine_glGetnUniformdvARB },
13537   { "glGetnUniformfvARB", "GL_ARB_robustness", wine_glGetnUniformfvARB },
13538   { "glGetnUniformivARB", "GL_ARB_robustness", wine_glGetnUniformivARB },
13539   { "glGetnUniformuivARB", "GL_ARB_robustness", wine_glGetnUniformuivARB },
13540   { "glGlobalAlphaFactorbSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorbSUN },
13541   { "glGlobalAlphaFactordSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactordSUN },
13542   { "glGlobalAlphaFactorfSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorfSUN },
13543   { "glGlobalAlphaFactoriSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactoriSUN },
13544   { "glGlobalAlphaFactorsSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorsSUN },
13545   { "glGlobalAlphaFactorubSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorubSUN },
13546   { "glGlobalAlphaFactoruiSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactoruiSUN },
13547   { "glGlobalAlphaFactorusSUN", "GL_SUN_global_alpha", wine_glGlobalAlphaFactorusSUN },
13548   { "glHintPGI", "GL_PGI_misc_hints", wine_glHintPGI },
13549   { "glHistogram", "GL_VERSION_1_2_DEPRECATED", wine_glHistogram },
13550   { "glHistogramEXT", "GL_EXT_histogram", wine_glHistogramEXT },
13551   { "glIglooInterfaceSGIX", "GL_SGIX_igloo_interface", wine_glIglooInterfaceSGIX },
13552   { "glImageTransformParameterfHP", "GL_HP_image_transform", wine_glImageTransformParameterfHP },
13553   { "glImageTransformParameterfvHP", "GL_HP_image_transform", wine_glImageTransformParameterfvHP },
13554   { "glImageTransformParameteriHP", "GL_HP_image_transform", wine_glImageTransformParameteriHP },
13555   { "glImageTransformParameterivHP", "GL_HP_image_transform", wine_glImageTransformParameterivHP },
13556   { "glImportSyncEXT", "GL_EXT_x11_sync_object", wine_glImportSyncEXT },
13557   { "glIndexFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glIndexFormatNV },
13558   { "glIndexFuncEXT", "GL_EXT_index_func", wine_glIndexFuncEXT },
13559   { "glIndexMaterialEXT", "GL_EXT_index_material", wine_glIndexMaterialEXT },
13560   { "glIndexPointerEXT", "GL_EXT_vertex_array", wine_glIndexPointerEXT },
13561   { "glIndexPointerListIBM", "GL_IBM_vertex_array_lists", wine_glIndexPointerListIBM },
13562   { "glInsertComponentEXT", "GL_EXT_vertex_shader", wine_glInsertComponentEXT },
13563   { "glInstrumentsBufferSGIX", "GL_SGIX_instruments", wine_glInstrumentsBufferSGIX },
13564   { "glInterpolatePathsNV", "GL_NV_path_rendering", wine_glInterpolatePathsNV },
13565   { "glInvalidateBufferData", "GL_ARB_invalidate_subdata", wine_glInvalidateBufferData },
13566   { "glInvalidateBufferSubData", "GL_ARB_invalidate_subdata", wine_glInvalidateBufferSubData },
13567   { "glInvalidateFramebuffer", "GL_ARB_invalidate_subdata", wine_glInvalidateFramebuffer },
13568   { "glInvalidateSubFramebuffer", "GL_ARB_invalidate_subdata", wine_glInvalidateSubFramebuffer },
13569   { "glInvalidateTexImage", "GL_ARB_invalidate_subdata", wine_glInvalidateTexImage },
13570   { "glInvalidateTexSubImage", "GL_ARB_invalidate_subdata", wine_glInvalidateTexSubImage },
13571   { "glIsAsyncMarkerSGIX", "GL_SGIX_async", wine_glIsAsyncMarkerSGIX },
13572   { "glIsBuffer", "GL_VERSION_1_5", wine_glIsBuffer },
13573   { "glIsBufferARB", "GL_ARB_vertex_buffer_object", wine_glIsBufferARB },
13574   { "glIsBufferResidentNV", "GL_NV_shader_buffer_load", wine_glIsBufferResidentNV },
13575   { "glIsEnabledIndexedEXT", "GL_EXT_draw_buffers2", wine_glIsEnabledIndexedEXT },
13576   { "glIsEnabledi", "GL_VERSION_3_0", wine_glIsEnabledi },
13577   { "glIsFenceAPPLE", "GL_APPLE_fence", wine_glIsFenceAPPLE },
13578   { "glIsFenceNV", "GL_NV_fence", wine_glIsFenceNV },
13579   { "glIsFramebuffer", "GL_ARB_framebuffer_object", wine_glIsFramebuffer },
13580   { "glIsFramebufferEXT", "GL_EXT_framebuffer_object", wine_glIsFramebufferEXT },
13581   { "glIsImageHandleResidentNV", "GL_NV_bindless_texture", wine_glIsImageHandleResidentNV },
13582   { "glIsNameAMD", "GL_AMD_name_gen_delete", wine_glIsNameAMD },
13583   { "glIsNamedBufferResidentNV", "GL_NV_shader_buffer_load", wine_glIsNamedBufferResidentNV },
13584   { "glIsNamedStringARB", "GL_ARB_shading_language_include", wine_glIsNamedStringARB },
13585   { "glIsObjectBufferATI", "GL_ATI_vertex_array_object", wine_glIsObjectBufferATI },
13586   { "glIsOcclusionQueryNV", "GL_NV_occlusion_query", wine_glIsOcclusionQueryNV },
13587   { "glIsPathNV", "GL_NV_path_rendering", wine_glIsPathNV },
13588   { "glIsPointInFillPathNV", "GL_NV_path_rendering", wine_glIsPointInFillPathNV },
13589   { "glIsPointInStrokePathNV", "GL_NV_path_rendering", wine_glIsPointInStrokePathNV },
13590   { "glIsProgram", "GL_VERSION_2_0", wine_glIsProgram },
13591   { "glIsProgramARB", "GL_ARB_vertex_program", wine_glIsProgramARB },
13592   { "glIsProgramNV", "GL_NV_vertex_program", wine_glIsProgramNV },
13593   { "glIsProgramPipeline", "GL_ARB_separate_shader_objects", wine_glIsProgramPipeline },
13594   { "glIsQuery", "GL_VERSION_1_5", wine_glIsQuery },
13595   { "glIsQueryARB", "GL_ARB_occlusion_query", wine_glIsQueryARB },
13596   { "glIsRenderbuffer", "GL_ARB_framebuffer_object", wine_glIsRenderbuffer },
13597   { "glIsRenderbufferEXT", "GL_EXT_framebuffer_object", wine_glIsRenderbufferEXT },
13598   { "glIsSampler", "GL_ARB_sampler_objects", wine_glIsSampler },
13599   { "glIsShader", "GL_VERSION_2_0", wine_glIsShader },
13600   { "glIsSync", "GL_ARB_sync", wine_glIsSync },
13601   { "glIsTextureEXT", "GL_EXT_texture_object", wine_glIsTextureEXT },
13602   { "glIsTextureHandleResidentNV", "GL_NV_bindless_texture", wine_glIsTextureHandleResidentNV },
13603   { "glIsTransformFeedback", "GL_ARB_transform_feedback2", wine_glIsTransformFeedback },
13604   { "glIsTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glIsTransformFeedbackNV },
13605   { "glIsVariantEnabledEXT", "GL_EXT_vertex_shader", wine_glIsVariantEnabledEXT },
13606   { "glIsVertexArray", "GL_ARB_vertex_array_object", wine_glIsVertexArray },
13607   { "glIsVertexArrayAPPLE", "GL_APPLE_vertex_array_object", wine_glIsVertexArrayAPPLE },
13608   { "glIsVertexAttribEnabledAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glIsVertexAttribEnabledAPPLE },
13609   { "glLightEnviSGIX", "GL_SGIX_fragment_lighting", wine_glLightEnviSGIX },
13610   { "glLinkProgram", "GL_VERSION_2_0", wine_glLinkProgram },
13611   { "glLinkProgramARB", "GL_ARB_shader_objects", wine_glLinkProgramARB },
13612   { "glListParameterfSGIX", "GL_SGIX_list_priority", wine_glListParameterfSGIX },
13613   { "glListParameterfvSGIX", "GL_SGIX_list_priority", wine_glListParameterfvSGIX },
13614   { "glListParameteriSGIX", "GL_SGIX_list_priority", wine_glListParameteriSGIX },
13615   { "glListParameterivSGIX", "GL_SGIX_list_priority", wine_glListParameterivSGIX },
13616   { "glLoadIdentityDeformationMapSGIX", "GL_SGIX_polynomial_ffd", wine_glLoadIdentityDeformationMapSGIX },
13617   { "glLoadProgramNV", "GL_NV_vertex_program", wine_glLoadProgramNV },
13618   { "glLoadTransposeMatrixd", "GL_VERSION_1_3_DEPRECATED", wine_glLoadTransposeMatrixd },
13619   { "glLoadTransposeMatrixdARB", "GL_ARB_transpose_matrix", wine_glLoadTransposeMatrixdARB },
13620   { "glLoadTransposeMatrixf", "GL_VERSION_1_3_DEPRECATED", wine_glLoadTransposeMatrixf },
13621   { "glLoadTransposeMatrixfARB", "GL_ARB_transpose_matrix", wine_glLoadTransposeMatrixfARB },
13622   { "glLockArraysEXT", "GL_EXT_compiled_vertex_array", wine_glLockArraysEXT },
13623   { "glMTexCoord2fSGIS", "GL_SGIS_multitexture", wine_glMTexCoord2fSGIS },
13624   { "glMTexCoord2fvSGIS", "GL_SGIS_multitexture", wine_glMTexCoord2fvSGIS },
13625   { "glMakeBufferNonResidentNV", "GL_NV_shader_buffer_load", wine_glMakeBufferNonResidentNV },
13626   { "glMakeBufferResidentNV", "GL_NV_shader_buffer_load", wine_glMakeBufferResidentNV },
13627   { "glMakeImageHandleNonResidentNV", "GL_NV_bindless_texture", wine_glMakeImageHandleNonResidentNV },
13628   { "glMakeImageHandleResidentNV", "GL_NV_bindless_texture", wine_glMakeImageHandleResidentNV },
13629   { "glMakeNamedBufferNonResidentNV", "GL_NV_shader_buffer_load", wine_glMakeNamedBufferNonResidentNV },
13630   { "glMakeNamedBufferResidentNV", "GL_NV_shader_buffer_load", wine_glMakeNamedBufferResidentNV },
13631   { "glMakeTextureHandleNonResidentNV", "GL_NV_bindless_texture", wine_glMakeTextureHandleNonResidentNV },
13632   { "glMakeTextureHandleResidentNV", "GL_NV_bindless_texture", wine_glMakeTextureHandleResidentNV },
13633   { "glMapBuffer", "GL_VERSION_1_5", wine_glMapBuffer },
13634   { "glMapBufferARB", "GL_ARB_vertex_buffer_object", wine_glMapBufferARB },
13635   { "glMapBufferRange", "GL_ARB_map_buffer_range", wine_glMapBufferRange },
13636   { "glMapControlPointsNV", "GL_NV_evaluators", wine_glMapControlPointsNV },
13637   { "glMapNamedBufferEXT", "GL_EXT_direct_state_access", wine_glMapNamedBufferEXT },
13638   { "glMapNamedBufferRangeEXT", "GL_EXT_direct_state_access", wine_glMapNamedBufferRangeEXT },
13639   { "glMapObjectBufferATI", "GL_ATI_map_object_buffer", wine_glMapObjectBufferATI },
13640   { "glMapParameterfvNV", "GL_NV_evaluators", wine_glMapParameterfvNV },
13641   { "glMapParameterivNV", "GL_NV_evaluators", wine_glMapParameterivNV },
13642   { "glMapVertexAttrib1dAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glMapVertexAttrib1dAPPLE },
13643   { "glMapVertexAttrib1fAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glMapVertexAttrib1fAPPLE },
13644   { "glMapVertexAttrib2dAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glMapVertexAttrib2dAPPLE },
13645   { "glMapVertexAttrib2fAPPLE", "GL_APPLE_vertex_program_evaluators", wine_glMapVertexAttrib2fAPPLE },
13646   { "glMatrixFrustumEXT", "GL_EXT_direct_state_access", wine_glMatrixFrustumEXT },
13647   { "glMatrixIndexPointerARB", "GL_ARB_matrix_palette", wine_glMatrixIndexPointerARB },
13648   { "glMatrixIndexubvARB", "GL_ARB_matrix_palette", wine_glMatrixIndexubvARB },
13649   { "glMatrixIndexuivARB", "GL_ARB_matrix_palette", wine_glMatrixIndexuivARB },
13650   { "glMatrixIndexusvARB", "GL_ARB_matrix_palette", wine_glMatrixIndexusvARB },
13651   { "glMatrixLoadIdentityEXT", "GL_EXT_direct_state_access", wine_glMatrixLoadIdentityEXT },
13652   { "glMatrixLoadTransposedEXT", "GL_EXT_direct_state_access", wine_glMatrixLoadTransposedEXT },
13653   { "glMatrixLoadTransposefEXT", "GL_EXT_direct_state_access", wine_glMatrixLoadTransposefEXT },
13654   { "glMatrixLoaddEXT", "GL_EXT_direct_state_access", wine_glMatrixLoaddEXT },
13655   { "glMatrixLoadfEXT", "GL_EXT_direct_state_access", wine_glMatrixLoadfEXT },
13656   { "glMatrixMultTransposedEXT", "GL_EXT_direct_state_access", wine_glMatrixMultTransposedEXT },
13657   { "glMatrixMultTransposefEXT", "GL_EXT_direct_state_access", wine_glMatrixMultTransposefEXT },
13658   { "glMatrixMultdEXT", "GL_EXT_direct_state_access", wine_glMatrixMultdEXT },
13659   { "glMatrixMultfEXT", "GL_EXT_direct_state_access", wine_glMatrixMultfEXT },
13660   { "glMatrixOrthoEXT", "GL_EXT_direct_state_access", wine_glMatrixOrthoEXT },
13661   { "glMatrixPopEXT", "GL_EXT_direct_state_access", wine_glMatrixPopEXT },
13662   { "glMatrixPushEXT", "GL_EXT_direct_state_access", wine_glMatrixPushEXT },
13663   { "glMatrixRotatedEXT", "GL_EXT_direct_state_access", wine_glMatrixRotatedEXT },
13664   { "glMatrixRotatefEXT", "GL_EXT_direct_state_access", wine_glMatrixRotatefEXT },
13665   { "glMatrixScaledEXT", "GL_EXT_direct_state_access", wine_glMatrixScaledEXT },
13666   { "glMatrixScalefEXT", "GL_EXT_direct_state_access", wine_glMatrixScalefEXT },
13667   { "glMatrixTranslatedEXT", "GL_EXT_direct_state_access", wine_glMatrixTranslatedEXT },
13668   { "glMatrixTranslatefEXT", "GL_EXT_direct_state_access", wine_glMatrixTranslatefEXT },
13669   { "glMemoryBarrier", "GL_ARB_shader_image_load_store", wine_glMemoryBarrier },
13670   { "glMemoryBarrierEXT", "GL_EXT_shader_image_load_store", wine_glMemoryBarrierEXT },
13671   { "glMinSampleShading", "GL_VERSION_4_0", wine_glMinSampleShading },
13672   { "glMinSampleShadingARB", "GL_ARB_sample_shading", wine_glMinSampleShadingARB },
13673   { "glMinmax", "GL_VERSION_1_2_DEPRECATED", wine_glMinmax },
13674   { "glMinmaxEXT", "GL_EXT_histogram", wine_glMinmaxEXT },
13675   { "glMultTransposeMatrixd", "GL_VERSION_1_3_DEPRECATED", wine_glMultTransposeMatrixd },
13676   { "glMultTransposeMatrixdARB", "GL_ARB_transpose_matrix", wine_glMultTransposeMatrixdARB },
13677   { "glMultTransposeMatrixf", "GL_VERSION_1_3_DEPRECATED", wine_glMultTransposeMatrixf },
13678   { "glMultTransposeMatrixfARB", "GL_ARB_transpose_matrix", wine_glMultTransposeMatrixfARB },
13679   { "glMultiDrawArrays", "GL_VERSION_1_4", wine_glMultiDrawArrays },
13680   { "glMultiDrawArraysEXT", "GL_EXT_multi_draw_arrays", wine_glMultiDrawArraysEXT },
13681   { "glMultiDrawArraysIndirect", "GL_ARB_multi_draw_indirect", wine_glMultiDrawArraysIndirect },
13682   { "glMultiDrawArraysIndirectAMD", "GL_AMD_multi_draw_indirect", wine_glMultiDrawArraysIndirectAMD },
13683   { "glMultiDrawElementArrayAPPLE", "GL_APPLE_element_array", wine_glMultiDrawElementArrayAPPLE },
13684   { "glMultiDrawElements", "GL_VERSION_1_4", wine_glMultiDrawElements },
13685   { "glMultiDrawElementsBaseVertex", "GL_ARB_draw_elements_base_vertex", wine_glMultiDrawElementsBaseVertex },
13686   { "glMultiDrawElementsEXT", "GL_EXT_multi_draw_arrays", wine_glMultiDrawElementsEXT },
13687   { "glMultiDrawElementsIndirect", "GL_ARB_multi_draw_indirect", wine_glMultiDrawElementsIndirect },
13688   { "glMultiDrawElementsIndirectAMD", "GL_AMD_multi_draw_indirect", wine_glMultiDrawElementsIndirectAMD },
13689   { "glMultiDrawRangeElementArrayAPPLE", "GL_APPLE_element_array", wine_glMultiDrawRangeElementArrayAPPLE },
13690   { "glMultiModeDrawArraysIBM", "GL_IBM_multimode_draw_arrays", wine_glMultiModeDrawArraysIBM },
13691   { "glMultiModeDrawElementsIBM", "GL_IBM_multimode_draw_arrays", wine_glMultiModeDrawElementsIBM },
13692   { "glMultiTexBufferEXT", "GL_EXT_direct_state_access", wine_glMultiTexBufferEXT },
13693   { "glMultiTexCoord1d", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1d },
13694   { "glMultiTexCoord1dARB", "GL_ARB_multitexture", wine_glMultiTexCoord1dARB },
13695   { "glMultiTexCoord1dSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1dSGIS },
13696   { "glMultiTexCoord1dv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1dv },
13697   { "glMultiTexCoord1dvARB", "GL_ARB_multitexture", wine_glMultiTexCoord1dvARB },
13698   { "glMultiTexCoord1dvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1dvSGIS },
13699   { "glMultiTexCoord1f", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1f },
13700   { "glMultiTexCoord1fARB", "GL_ARB_multitexture", wine_glMultiTexCoord1fARB },
13701   { "glMultiTexCoord1fSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1fSGIS },
13702   { "glMultiTexCoord1fv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1fv },
13703   { "glMultiTexCoord1fvARB", "GL_ARB_multitexture", wine_glMultiTexCoord1fvARB },
13704   { "glMultiTexCoord1fvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1fvSGIS },
13705   { "glMultiTexCoord1hNV", "GL_NV_half_float", wine_glMultiTexCoord1hNV },
13706   { "glMultiTexCoord1hvNV", "GL_NV_half_float", wine_glMultiTexCoord1hvNV },
13707   { "glMultiTexCoord1i", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1i },
13708   { "glMultiTexCoord1iARB", "GL_ARB_multitexture", wine_glMultiTexCoord1iARB },
13709   { "glMultiTexCoord1iSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1iSGIS },
13710   { "glMultiTexCoord1iv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1iv },
13711   { "glMultiTexCoord1ivARB", "GL_ARB_multitexture", wine_glMultiTexCoord1ivARB },
13712   { "glMultiTexCoord1ivSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1ivSGIS },
13713   { "glMultiTexCoord1s", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1s },
13714   { "glMultiTexCoord1sARB", "GL_ARB_multitexture", wine_glMultiTexCoord1sARB },
13715   { "glMultiTexCoord1sSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1sSGIS },
13716   { "glMultiTexCoord1sv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord1sv },
13717   { "glMultiTexCoord1svARB", "GL_ARB_multitexture", wine_glMultiTexCoord1svARB },
13718   { "glMultiTexCoord1svSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord1svSGIS },
13719   { "glMultiTexCoord2d", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2d },
13720   { "glMultiTexCoord2dARB", "GL_ARB_multitexture", wine_glMultiTexCoord2dARB },
13721   { "glMultiTexCoord2dSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2dSGIS },
13722   { "glMultiTexCoord2dv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2dv },
13723   { "glMultiTexCoord2dvARB", "GL_ARB_multitexture", wine_glMultiTexCoord2dvARB },
13724   { "glMultiTexCoord2dvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2dvSGIS },
13725   { "glMultiTexCoord2f", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2f },
13726   { "glMultiTexCoord2fARB", "GL_ARB_multitexture", wine_glMultiTexCoord2fARB },
13727   { "glMultiTexCoord2fSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2fSGIS },
13728   { "glMultiTexCoord2fv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2fv },
13729   { "glMultiTexCoord2fvARB", "GL_ARB_multitexture", wine_glMultiTexCoord2fvARB },
13730   { "glMultiTexCoord2fvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2fvSGIS },
13731   { "glMultiTexCoord2hNV", "GL_NV_half_float", wine_glMultiTexCoord2hNV },
13732   { "glMultiTexCoord2hvNV", "GL_NV_half_float", wine_glMultiTexCoord2hvNV },
13733   { "glMultiTexCoord2i", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2i },
13734   { "glMultiTexCoord2iARB", "GL_ARB_multitexture", wine_glMultiTexCoord2iARB },
13735   { "glMultiTexCoord2iSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2iSGIS },
13736   { "glMultiTexCoord2iv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2iv },
13737   { "glMultiTexCoord2ivARB", "GL_ARB_multitexture", wine_glMultiTexCoord2ivARB },
13738   { "glMultiTexCoord2ivSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2ivSGIS },
13739   { "glMultiTexCoord2s", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2s },
13740   { "glMultiTexCoord2sARB", "GL_ARB_multitexture", wine_glMultiTexCoord2sARB },
13741   { "glMultiTexCoord2sSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2sSGIS },
13742   { "glMultiTexCoord2sv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord2sv },
13743   { "glMultiTexCoord2svARB", "GL_ARB_multitexture", wine_glMultiTexCoord2svARB },
13744   { "glMultiTexCoord2svSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord2svSGIS },
13745   { "glMultiTexCoord3d", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3d },
13746   { "glMultiTexCoord3dARB", "GL_ARB_multitexture", wine_glMultiTexCoord3dARB },
13747   { "glMultiTexCoord3dSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3dSGIS },
13748   { "glMultiTexCoord3dv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3dv },
13749   { "glMultiTexCoord3dvARB", "GL_ARB_multitexture", wine_glMultiTexCoord3dvARB },
13750   { "glMultiTexCoord3dvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3dvSGIS },
13751   { "glMultiTexCoord3f", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3f },
13752   { "glMultiTexCoord3fARB", "GL_ARB_multitexture", wine_glMultiTexCoord3fARB },
13753   { "glMultiTexCoord3fSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3fSGIS },
13754   { "glMultiTexCoord3fv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3fv },
13755   { "glMultiTexCoord3fvARB", "GL_ARB_multitexture", wine_glMultiTexCoord3fvARB },
13756   { "glMultiTexCoord3fvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3fvSGIS },
13757   { "glMultiTexCoord3hNV", "GL_NV_half_float", wine_glMultiTexCoord3hNV },
13758   { "glMultiTexCoord3hvNV", "GL_NV_half_float", wine_glMultiTexCoord3hvNV },
13759   { "glMultiTexCoord3i", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3i },
13760   { "glMultiTexCoord3iARB", "GL_ARB_multitexture", wine_glMultiTexCoord3iARB },
13761   { "glMultiTexCoord3iSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3iSGIS },
13762   { "glMultiTexCoord3iv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3iv },
13763   { "glMultiTexCoord3ivARB", "GL_ARB_multitexture", wine_glMultiTexCoord3ivARB },
13764   { "glMultiTexCoord3ivSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3ivSGIS },
13765   { "glMultiTexCoord3s", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3s },
13766   { "glMultiTexCoord3sARB", "GL_ARB_multitexture", wine_glMultiTexCoord3sARB },
13767   { "glMultiTexCoord3sSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3sSGIS },
13768   { "glMultiTexCoord3sv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord3sv },
13769   { "glMultiTexCoord3svARB", "GL_ARB_multitexture", wine_glMultiTexCoord3svARB },
13770   { "glMultiTexCoord3svSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord3svSGIS },
13771   { "glMultiTexCoord4d", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4d },
13772   { "glMultiTexCoord4dARB", "GL_ARB_multitexture", wine_glMultiTexCoord4dARB },
13773   { "glMultiTexCoord4dSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4dSGIS },
13774   { "glMultiTexCoord4dv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4dv },
13775   { "glMultiTexCoord4dvARB", "GL_ARB_multitexture", wine_glMultiTexCoord4dvARB },
13776   { "glMultiTexCoord4dvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4dvSGIS },
13777   { "glMultiTexCoord4f", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4f },
13778   { "glMultiTexCoord4fARB", "GL_ARB_multitexture", wine_glMultiTexCoord4fARB },
13779   { "glMultiTexCoord4fSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4fSGIS },
13780   { "glMultiTexCoord4fv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4fv },
13781   { "glMultiTexCoord4fvARB", "GL_ARB_multitexture", wine_glMultiTexCoord4fvARB },
13782   { "glMultiTexCoord4fvSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4fvSGIS },
13783   { "glMultiTexCoord4hNV", "GL_NV_half_float", wine_glMultiTexCoord4hNV },
13784   { "glMultiTexCoord4hvNV", "GL_NV_half_float", wine_glMultiTexCoord4hvNV },
13785   { "glMultiTexCoord4i", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4i },
13786   { "glMultiTexCoord4iARB", "GL_ARB_multitexture", wine_glMultiTexCoord4iARB },
13787   { "glMultiTexCoord4iSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4iSGIS },
13788   { "glMultiTexCoord4iv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4iv },
13789   { "glMultiTexCoord4ivARB", "GL_ARB_multitexture", wine_glMultiTexCoord4ivARB },
13790   { "glMultiTexCoord4ivSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4ivSGIS },
13791   { "glMultiTexCoord4s", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4s },
13792   { "glMultiTexCoord4sARB", "GL_ARB_multitexture", wine_glMultiTexCoord4sARB },
13793   { "glMultiTexCoord4sSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4sSGIS },
13794   { "glMultiTexCoord4sv", "GL_VERSION_1_3_DEPRECATED", wine_glMultiTexCoord4sv },
13795   { "glMultiTexCoord4svARB", "GL_ARB_multitexture", wine_glMultiTexCoord4svARB },
13796   { "glMultiTexCoord4svSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoord4svSGIS },
13797   { "glMultiTexCoordP1ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP1ui },
13798   { "glMultiTexCoordP1uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP1uiv },
13799   { "glMultiTexCoordP2ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP2ui },
13800   { "glMultiTexCoordP2uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP2uiv },
13801   { "glMultiTexCoordP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP3ui },
13802   { "glMultiTexCoordP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP3uiv },
13803   { "glMultiTexCoordP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP4ui },
13804   { "glMultiTexCoordP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glMultiTexCoordP4uiv },
13805   { "glMultiTexCoordPointerEXT", "GL_EXT_direct_state_access", wine_glMultiTexCoordPointerEXT },
13806   { "glMultiTexCoordPointerSGIS", "GL_SGIS_multitexture", wine_glMultiTexCoordPointerSGIS },
13807   { "glMultiTexEnvfEXT", "GL_EXT_direct_state_access", wine_glMultiTexEnvfEXT },
13808   { "glMultiTexEnvfvEXT", "GL_EXT_direct_state_access", wine_glMultiTexEnvfvEXT },
13809   { "glMultiTexEnviEXT", "GL_EXT_direct_state_access", wine_glMultiTexEnviEXT },
13810   { "glMultiTexEnvivEXT", "GL_EXT_direct_state_access", wine_glMultiTexEnvivEXT },
13811   { "glMultiTexGendEXT", "GL_EXT_direct_state_access", wine_glMultiTexGendEXT },
13812   { "glMultiTexGendvEXT", "GL_EXT_direct_state_access", wine_glMultiTexGendvEXT },
13813   { "glMultiTexGenfEXT", "GL_EXT_direct_state_access", wine_glMultiTexGenfEXT },
13814   { "glMultiTexGenfvEXT", "GL_EXT_direct_state_access", wine_glMultiTexGenfvEXT },
13815   { "glMultiTexGeniEXT", "GL_EXT_direct_state_access", wine_glMultiTexGeniEXT },
13816   { "glMultiTexGenivEXT", "GL_EXT_direct_state_access", wine_glMultiTexGenivEXT },
13817   { "glMultiTexImage1DEXT", "GL_EXT_direct_state_access", wine_glMultiTexImage1DEXT },
13818   { "glMultiTexImage2DEXT", "GL_EXT_direct_state_access", wine_glMultiTexImage2DEXT },
13819   { "glMultiTexImage3DEXT", "GL_EXT_direct_state_access", wine_glMultiTexImage3DEXT },
13820   { "glMultiTexParameterIivEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterIivEXT },
13821   { "glMultiTexParameterIuivEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterIuivEXT },
13822   { "glMultiTexParameterfEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterfEXT },
13823   { "glMultiTexParameterfvEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterfvEXT },
13824   { "glMultiTexParameteriEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameteriEXT },
13825   { "glMultiTexParameterivEXT", "GL_EXT_direct_state_access", wine_glMultiTexParameterivEXT },
13826   { "glMultiTexRenderbufferEXT", "GL_EXT_direct_state_access", wine_glMultiTexRenderbufferEXT },
13827   { "glMultiTexSubImage1DEXT", "GL_EXT_direct_state_access", wine_glMultiTexSubImage1DEXT },
13828   { "glMultiTexSubImage2DEXT", "GL_EXT_direct_state_access", wine_glMultiTexSubImage2DEXT },
13829   { "glMultiTexSubImage3DEXT", "GL_EXT_direct_state_access", wine_glMultiTexSubImage3DEXT },
13830   { "glNamedBufferDataEXT", "GL_EXT_direct_state_access", wine_glNamedBufferDataEXT },
13831   { "glNamedBufferSubDataEXT", "GL_EXT_direct_state_access", wine_glNamedBufferSubDataEXT },
13832   { "glNamedCopyBufferSubDataEXT", "GL_EXT_direct_state_access", wine_glNamedCopyBufferSubDataEXT },
13833   { "glNamedFramebufferParameteriEXT", "GL_ARB_framebuffer_no_attachments", wine_glNamedFramebufferParameteriEXT },
13834   { "glNamedFramebufferRenderbufferEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferRenderbufferEXT },
13835   { "glNamedFramebufferTexture1DEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTexture1DEXT },
13836   { "glNamedFramebufferTexture2DEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTexture2DEXT },
13837   { "glNamedFramebufferTexture3DEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTexture3DEXT },
13838   { "glNamedFramebufferTextureEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTextureEXT },
13839   { "glNamedFramebufferTextureFaceEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTextureFaceEXT },
13840   { "glNamedFramebufferTextureLayerEXT", "GL_EXT_direct_state_access", wine_glNamedFramebufferTextureLayerEXT },
13841   { "glNamedProgramLocalParameter4dEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameter4dEXT },
13842   { "glNamedProgramLocalParameter4dvEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameter4dvEXT },
13843   { "glNamedProgramLocalParameter4fEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameter4fEXT },
13844   { "glNamedProgramLocalParameter4fvEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameter4fvEXT },
13845   { "glNamedProgramLocalParameterI4iEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameterI4iEXT },
13846   { "glNamedProgramLocalParameterI4ivEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameterI4ivEXT },
13847   { "glNamedProgramLocalParameterI4uiEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameterI4uiEXT },
13848   { "glNamedProgramLocalParameterI4uivEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameterI4uivEXT },
13849   { "glNamedProgramLocalParameters4fvEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParameters4fvEXT },
13850   { "glNamedProgramLocalParametersI4ivEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParametersI4ivEXT },
13851   { "glNamedProgramLocalParametersI4uivEXT", "GL_EXT_direct_state_access", wine_glNamedProgramLocalParametersI4uivEXT },
13852   { "glNamedProgramStringEXT", "GL_EXT_direct_state_access", wine_glNamedProgramStringEXT },
13853   { "glNamedRenderbufferStorageEXT", "GL_EXT_direct_state_access", wine_glNamedRenderbufferStorageEXT },
13854   { "glNamedRenderbufferStorageMultisampleCoverageEXT", "GL_EXT_direct_state_access", wine_glNamedRenderbufferStorageMultisampleCoverageEXT },
13855   { "glNamedRenderbufferStorageMultisampleEXT", "GL_EXT_direct_state_access", wine_glNamedRenderbufferStorageMultisampleEXT },
13856   { "glNamedStringARB", "GL_ARB_shading_language_include", wine_glNamedStringARB },
13857   { "glNewBufferRegion", "GL_KTX_buffer_region", wine_glNewBufferRegion },
13858   { "glNewObjectBufferATI", "GL_ATI_vertex_array_object", wine_glNewObjectBufferATI },
13859   { "glNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glNormal3fVertex3fSUN },
13860   { "glNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glNormal3fVertex3fvSUN },
13861   { "glNormal3hNV", "GL_NV_half_float", wine_glNormal3hNV },
13862   { "glNormal3hvNV", "GL_NV_half_float", wine_glNormal3hvNV },
13863   { "glNormalFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glNormalFormatNV },
13864   { "glNormalP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glNormalP3ui },
13865   { "glNormalP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glNormalP3uiv },
13866   { "glNormalPointerEXT", "GL_EXT_vertex_array", wine_glNormalPointerEXT },
13867   { "glNormalPointerListIBM", "GL_IBM_vertex_array_lists", wine_glNormalPointerListIBM },
13868   { "glNormalPointervINTEL", "GL_INTEL_parallel_arrays", wine_glNormalPointervINTEL },
13869   { "glNormalStream3bATI", "GL_ATI_vertex_streams", wine_glNormalStream3bATI },
13870   { "glNormalStream3bvATI", "GL_ATI_vertex_streams", wine_glNormalStream3bvATI },
13871   { "glNormalStream3dATI", "GL_ATI_vertex_streams", wine_glNormalStream3dATI },
13872   { "glNormalStream3dvATI", "GL_ATI_vertex_streams", wine_glNormalStream3dvATI },
13873   { "glNormalStream3fATI", "GL_ATI_vertex_streams", wine_glNormalStream3fATI },
13874   { "glNormalStream3fvATI", "GL_ATI_vertex_streams", wine_glNormalStream3fvATI },
13875   { "glNormalStream3iATI", "GL_ATI_vertex_streams", wine_glNormalStream3iATI },
13876   { "glNormalStream3ivATI", "GL_ATI_vertex_streams", wine_glNormalStream3ivATI },
13877   { "glNormalStream3sATI", "GL_ATI_vertex_streams", wine_glNormalStream3sATI },
13878   { "glNormalStream3svATI", "GL_ATI_vertex_streams", wine_glNormalStream3svATI },
13879   { "glObjectLabel", "GL_KHR_debug", wine_glObjectLabel },
13880   { "glObjectPtrLabel", "GL_KHR_debug", wine_glObjectPtrLabel },
13881   { "glObjectPurgeableAPPLE", "GL_APPLE_object_purgeable", wine_glObjectPurgeableAPPLE },
13882   { "glObjectUnpurgeableAPPLE", "GL_APPLE_object_purgeable", wine_glObjectUnpurgeableAPPLE },
13883   { "glPNTrianglesfATI", "GL_ATI_pn_triangles", wine_glPNTrianglesfATI },
13884   { "glPNTrianglesiATI", "GL_ATI_pn_triangles", wine_glPNTrianglesiATI },
13885   { "glPassTexCoordATI", "GL_ATI_fragment_shader", wine_glPassTexCoordATI },
13886   { "glPatchParameterfv", "GL_ARB_tessellation_shader", wine_glPatchParameterfv },
13887   { "glPatchParameteri", "GL_ARB_tessellation_shader", wine_glPatchParameteri },
13888   { "glPathColorGenNV", "GL_NV_path_rendering", wine_glPathColorGenNV },
13889   { "glPathCommandsNV", "GL_NV_path_rendering", wine_glPathCommandsNV },
13890   { "glPathCoordsNV", "GL_NV_path_rendering", wine_glPathCoordsNV },
13891   { "glPathCoverDepthFuncNV", "GL_NV_path_rendering", wine_glPathCoverDepthFuncNV },
13892   { "glPathDashArrayNV", "GL_NV_path_rendering", wine_glPathDashArrayNV },
13893   { "glPathFogGenNV", "GL_NV_path_rendering", wine_glPathFogGenNV },
13894   { "glPathGlyphRangeNV", "GL_NV_path_rendering", wine_glPathGlyphRangeNV },
13895   { "glPathGlyphsNV", "GL_NV_path_rendering", wine_glPathGlyphsNV },
13896   { "glPathParameterfNV", "GL_NV_path_rendering", wine_glPathParameterfNV },
13897   { "glPathParameterfvNV", "GL_NV_path_rendering", wine_glPathParameterfvNV },
13898   { "glPathParameteriNV", "GL_NV_path_rendering", wine_glPathParameteriNV },
13899   { "glPathParameterivNV", "GL_NV_path_rendering", wine_glPathParameterivNV },
13900   { "glPathStencilDepthOffsetNV", "GL_NV_path_rendering", wine_glPathStencilDepthOffsetNV },
13901   { "glPathStencilFuncNV", "GL_NV_path_rendering", wine_glPathStencilFuncNV },
13902   { "glPathStringNV", "GL_NV_path_rendering", wine_glPathStringNV },
13903   { "glPathSubCommandsNV", "GL_NV_path_rendering", wine_glPathSubCommandsNV },
13904   { "glPathSubCoordsNV", "GL_NV_path_rendering", wine_glPathSubCoordsNV },
13905   { "glPathTexGenNV", "GL_NV_path_rendering", wine_glPathTexGenNV },
13906   { "glPauseTransformFeedback", "GL_ARB_transform_feedback2", wine_glPauseTransformFeedback },
13907   { "glPauseTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glPauseTransformFeedbackNV },
13908   { "glPixelDataRangeNV", "GL_NV_pixel_data_range", wine_glPixelDataRangeNV },
13909   { "glPixelTexGenParameterfSGIS", "GL_SGIS_pixel_texture", wine_glPixelTexGenParameterfSGIS },
13910   { "glPixelTexGenParameterfvSGIS", "GL_SGIS_pixel_texture", wine_glPixelTexGenParameterfvSGIS },
13911   { "glPixelTexGenParameteriSGIS", "GL_SGIS_pixel_texture", wine_glPixelTexGenParameteriSGIS },
13912   { "glPixelTexGenParameterivSGIS", "GL_SGIS_pixel_texture", wine_glPixelTexGenParameterivSGIS },
13913   { "glPixelTexGenSGIX", "GL_SGIX_pixel_texture", wine_glPixelTexGenSGIX },
13914   { "glPixelTransformParameterfEXT", "GL_EXT_pixel_transform", wine_glPixelTransformParameterfEXT },
13915   { "glPixelTransformParameterfvEXT", "GL_EXT_pixel_transform", wine_glPixelTransformParameterfvEXT },
13916   { "glPixelTransformParameteriEXT", "GL_EXT_pixel_transform", wine_glPixelTransformParameteriEXT },
13917   { "glPixelTransformParameterivEXT", "GL_EXT_pixel_transform", wine_glPixelTransformParameterivEXT },
13918   { "glPointAlongPathNV", "GL_NV_path_rendering", wine_glPointAlongPathNV },
13919   { "glPointParameterf", "GL_VERSION_1_4", wine_glPointParameterf },
13920   { "glPointParameterfARB", "GL_ARB_point_parameters", wine_glPointParameterfARB },
13921   { "glPointParameterfEXT", "GL_EXT_point_parameters", wine_glPointParameterfEXT },
13922   { "glPointParameterfSGIS", "GL_SGIS_point_parameters", wine_glPointParameterfSGIS },
13923   { "glPointParameterfv", "GL_VERSION_1_4", wine_glPointParameterfv },
13924   { "glPointParameterfvARB", "GL_ARB_point_parameters", wine_glPointParameterfvARB },
13925   { "glPointParameterfvEXT", "GL_EXT_point_parameters", wine_glPointParameterfvEXT },
13926   { "glPointParameterfvSGIS", "GL_SGIS_point_parameters", wine_glPointParameterfvSGIS },
13927   { "glPointParameteri", "GL_VERSION_1_4", wine_glPointParameteri },
13928   { "glPointParameteriNV", "GL_NV_point_sprite", wine_glPointParameteriNV },
13929   { "glPointParameteriv", "GL_VERSION_1_4", wine_glPointParameteriv },
13930   { "glPointParameterivNV", "GL_NV_point_sprite", wine_glPointParameterivNV },
13931   { "glPollAsyncSGIX", "GL_SGIX_async", wine_glPollAsyncSGIX },
13932   { "glPollInstrumentsSGIX", "GL_SGIX_instruments", wine_glPollInstrumentsSGIX },
13933   { "glPolygonOffsetEXT", "GL_EXT_polygon_offset", wine_glPolygonOffsetEXT },
13934   { "glPopDebugGroup", "GL_KHR_debug", wine_glPopDebugGroup },
13935   { "glPresentFrameDualFillNV", "GL_NV_present_video", wine_glPresentFrameDualFillNV },
13936   { "glPresentFrameKeyedNV", "GL_NV_present_video", wine_glPresentFrameKeyedNV },
13937   { "glPrimitiveRestartIndex", "GL_VERSION_3_1", wine_glPrimitiveRestartIndex },
13938   { "glPrimitiveRestartIndexNV", "GL_NV_primitive_restart", wine_glPrimitiveRestartIndexNV },
13939   { "glPrimitiveRestartNV", "GL_NV_primitive_restart", wine_glPrimitiveRestartNV },
13940   { "glPrioritizeTexturesEXT", "GL_EXT_texture_object", wine_glPrioritizeTexturesEXT },
13941   { "glProgramBinary", "GL_ARB_get_program_binary", wine_glProgramBinary },
13942   { "glProgramBufferParametersIivNV", "GL_NV_parameter_buffer_object", wine_glProgramBufferParametersIivNV },
13943   { "glProgramBufferParametersIuivNV", "GL_NV_parameter_buffer_object", wine_glProgramBufferParametersIuivNV },
13944   { "glProgramBufferParametersfvNV", "GL_NV_parameter_buffer_object", wine_glProgramBufferParametersfvNV },
13945   { "glProgramEnvParameter4dARB", "GL_ARB_vertex_program", wine_glProgramEnvParameter4dARB },
13946   { "glProgramEnvParameter4dvARB", "GL_ARB_vertex_program", wine_glProgramEnvParameter4dvARB },
13947   { "glProgramEnvParameter4fARB", "GL_ARB_vertex_program", wine_glProgramEnvParameter4fARB },
13948   { "glProgramEnvParameter4fvARB", "GL_ARB_vertex_program", wine_glProgramEnvParameter4fvARB },
13949   { "glProgramEnvParameterI4iNV", "GL_NV_gpu_program4", wine_glProgramEnvParameterI4iNV },
13950   { "glProgramEnvParameterI4ivNV", "GL_NV_gpu_program4", wine_glProgramEnvParameterI4ivNV },
13951   { "glProgramEnvParameterI4uiNV", "GL_NV_gpu_program4", wine_glProgramEnvParameterI4uiNV },
13952   { "glProgramEnvParameterI4uivNV", "GL_NV_gpu_program4", wine_glProgramEnvParameterI4uivNV },
13953   { "glProgramEnvParameters4fvEXT", "GL_EXT_gpu_program_parameters", wine_glProgramEnvParameters4fvEXT },
13954   { "glProgramEnvParametersI4ivNV", "GL_NV_gpu_program4", wine_glProgramEnvParametersI4ivNV },
13955   { "glProgramEnvParametersI4uivNV", "GL_NV_gpu_program4", wine_glProgramEnvParametersI4uivNV },
13956   { "glProgramLocalParameter4dARB", "GL_ARB_vertex_program", wine_glProgramLocalParameter4dARB },
13957   { "glProgramLocalParameter4dvARB", "GL_ARB_vertex_program", wine_glProgramLocalParameter4dvARB },
13958   { "glProgramLocalParameter4fARB", "GL_ARB_vertex_program", wine_glProgramLocalParameter4fARB },
13959   { "glProgramLocalParameter4fvARB", "GL_ARB_vertex_program", wine_glProgramLocalParameter4fvARB },
13960   { "glProgramLocalParameterI4iNV", "GL_NV_gpu_program4", wine_glProgramLocalParameterI4iNV },
13961   { "glProgramLocalParameterI4ivNV", "GL_NV_gpu_program4", wine_glProgramLocalParameterI4ivNV },
13962   { "glProgramLocalParameterI4uiNV", "GL_NV_gpu_program4", wine_glProgramLocalParameterI4uiNV },
13963   { "glProgramLocalParameterI4uivNV", "GL_NV_gpu_program4", wine_glProgramLocalParameterI4uivNV },
13964   { "glProgramLocalParameters4fvEXT", "GL_EXT_gpu_program_parameters", wine_glProgramLocalParameters4fvEXT },
13965   { "glProgramLocalParametersI4ivNV", "GL_NV_gpu_program4", wine_glProgramLocalParametersI4ivNV },
13966   { "glProgramLocalParametersI4uivNV", "GL_NV_gpu_program4", wine_glProgramLocalParametersI4uivNV },
13967   { "glProgramNamedParameter4dNV", "GL_NV_fragment_program", wine_glProgramNamedParameter4dNV },
13968   { "glProgramNamedParameter4dvNV", "GL_NV_fragment_program", wine_glProgramNamedParameter4dvNV },
13969   { "glProgramNamedParameter4fNV", "GL_NV_fragment_program", wine_glProgramNamedParameter4fNV },
13970   { "glProgramNamedParameter4fvNV", "GL_NV_fragment_program", wine_glProgramNamedParameter4fvNV },
13971   { "glProgramParameter4dNV", "GL_NV_vertex_program", wine_glProgramParameter4dNV },
13972   { "glProgramParameter4dvNV", "GL_NV_vertex_program", wine_glProgramParameter4dvNV },
13973   { "glProgramParameter4fNV", "GL_NV_vertex_program", wine_glProgramParameter4fNV },
13974   { "glProgramParameter4fvNV", "GL_NV_vertex_program", wine_glProgramParameter4fvNV },
13975   { "glProgramParameteri", "GL_ARB_get_program_binary", wine_glProgramParameteri },
13976   { "glProgramParameteriARB", "GL_ARB_geometry_shader4", wine_glProgramParameteriARB },
13977   { "glProgramParameteriEXT", "GL_EXT_geometry_shader4", wine_glProgramParameteriEXT },
13978   { "glProgramParameters4dvNV", "GL_NV_vertex_program", wine_glProgramParameters4dvNV },
13979   { "glProgramParameters4fvNV", "GL_NV_vertex_program", wine_glProgramParameters4fvNV },
13980   { "glProgramStringARB", "GL_ARB_vertex_program", wine_glProgramStringARB },
13981   { "glProgramSubroutineParametersuivNV", "GL_NV_gpu_program5", wine_glProgramSubroutineParametersuivNV },
13982   { "glProgramUniform1d", "GL_ARB_separate_shader_objects", wine_glProgramUniform1d },
13983   { "glProgramUniform1dEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1dEXT },
13984   { "glProgramUniform1dv", "GL_ARB_separate_shader_objects", wine_glProgramUniform1dv },
13985   { "glProgramUniform1dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1dvEXT },
13986   { "glProgramUniform1f", "GL_ARB_separate_shader_objects", wine_glProgramUniform1f },
13987   { "glProgramUniform1fEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1fEXT },
13988   { "glProgramUniform1fv", "GL_ARB_separate_shader_objects", wine_glProgramUniform1fv },
13989   { "glProgramUniform1fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1fvEXT },
13990   { "glProgramUniform1i", "GL_ARB_separate_shader_objects", wine_glProgramUniform1i },
13991   { "glProgramUniform1i64NV", "GL_NV_gpu_shader5", wine_glProgramUniform1i64NV },
13992   { "glProgramUniform1i64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform1i64vNV },
13993   { "glProgramUniform1iEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1iEXT },
13994   { "glProgramUniform1iv", "GL_ARB_separate_shader_objects", wine_glProgramUniform1iv },
13995   { "glProgramUniform1ivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1ivEXT },
13996   { "glProgramUniform1ui", "GL_ARB_separate_shader_objects", wine_glProgramUniform1ui },
13997   { "glProgramUniform1ui64NV", "GL_NV_gpu_shader5", wine_glProgramUniform1ui64NV },
13998   { "glProgramUniform1ui64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform1ui64vNV },
13999   { "glProgramUniform1uiEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1uiEXT },
14000   { "glProgramUniform1uiv", "GL_ARB_separate_shader_objects", wine_glProgramUniform1uiv },
14001   { "glProgramUniform1uivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform1uivEXT },
14002   { "glProgramUniform2d", "GL_ARB_separate_shader_objects", wine_glProgramUniform2d },
14003   { "glProgramUniform2dEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2dEXT },
14004   { "glProgramUniform2dv", "GL_ARB_separate_shader_objects", wine_glProgramUniform2dv },
14005   { "glProgramUniform2dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2dvEXT },
14006   { "glProgramUniform2f", "GL_ARB_separate_shader_objects", wine_glProgramUniform2f },
14007   { "glProgramUniform2fEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2fEXT },
14008   { "glProgramUniform2fv", "GL_ARB_separate_shader_objects", wine_glProgramUniform2fv },
14009   { "glProgramUniform2fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2fvEXT },
14010   { "glProgramUniform2i", "GL_ARB_separate_shader_objects", wine_glProgramUniform2i },
14011   { "glProgramUniform2i64NV", "GL_NV_gpu_shader5", wine_glProgramUniform2i64NV },
14012   { "glProgramUniform2i64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform2i64vNV },
14013   { "glProgramUniform2iEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2iEXT },
14014   { "glProgramUniform2iv", "GL_ARB_separate_shader_objects", wine_glProgramUniform2iv },
14015   { "glProgramUniform2ivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2ivEXT },
14016   { "glProgramUniform2ui", "GL_ARB_separate_shader_objects", wine_glProgramUniform2ui },
14017   { "glProgramUniform2ui64NV", "GL_NV_gpu_shader5", wine_glProgramUniform2ui64NV },
14018   { "glProgramUniform2ui64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform2ui64vNV },
14019   { "glProgramUniform2uiEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2uiEXT },
14020   { "glProgramUniform2uiv", "GL_ARB_separate_shader_objects", wine_glProgramUniform2uiv },
14021   { "glProgramUniform2uivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform2uivEXT },
14022   { "glProgramUniform3d", "GL_ARB_separate_shader_objects", wine_glProgramUniform3d },
14023   { "glProgramUniform3dEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3dEXT },
14024   { "glProgramUniform3dv", "GL_ARB_separate_shader_objects", wine_glProgramUniform3dv },
14025   { "glProgramUniform3dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3dvEXT },
14026   { "glProgramUniform3f", "GL_ARB_separate_shader_objects", wine_glProgramUniform3f },
14027   { "glProgramUniform3fEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3fEXT },
14028   { "glProgramUniform3fv", "GL_ARB_separate_shader_objects", wine_glProgramUniform3fv },
14029   { "glProgramUniform3fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3fvEXT },
14030   { "glProgramUniform3i", "GL_ARB_separate_shader_objects", wine_glProgramUniform3i },
14031   { "glProgramUniform3i64NV", "GL_NV_gpu_shader5", wine_glProgramUniform3i64NV },
14032   { "glProgramUniform3i64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform3i64vNV },
14033   { "glProgramUniform3iEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3iEXT },
14034   { "glProgramUniform3iv", "GL_ARB_separate_shader_objects", wine_glProgramUniform3iv },
14035   { "glProgramUniform3ivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3ivEXT },
14036   { "glProgramUniform3ui", "GL_ARB_separate_shader_objects", wine_glProgramUniform3ui },
14037   { "glProgramUniform3ui64NV", "GL_NV_gpu_shader5", wine_glProgramUniform3ui64NV },
14038   { "glProgramUniform3ui64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform3ui64vNV },
14039   { "glProgramUniform3uiEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3uiEXT },
14040   { "glProgramUniform3uiv", "GL_ARB_separate_shader_objects", wine_glProgramUniform3uiv },
14041   { "glProgramUniform3uivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform3uivEXT },
14042   { "glProgramUniform4d", "GL_ARB_separate_shader_objects", wine_glProgramUniform4d },
14043   { "glProgramUniform4dEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4dEXT },
14044   { "glProgramUniform4dv", "GL_ARB_separate_shader_objects", wine_glProgramUniform4dv },
14045   { "glProgramUniform4dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4dvEXT },
14046   { "glProgramUniform4f", "GL_ARB_separate_shader_objects", wine_glProgramUniform4f },
14047   { "glProgramUniform4fEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4fEXT },
14048   { "glProgramUniform4fv", "GL_ARB_separate_shader_objects", wine_glProgramUniform4fv },
14049   { "glProgramUniform4fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4fvEXT },
14050   { "glProgramUniform4i", "GL_ARB_separate_shader_objects", wine_glProgramUniform4i },
14051   { "glProgramUniform4i64NV", "GL_NV_gpu_shader5", wine_glProgramUniform4i64NV },
14052   { "glProgramUniform4i64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform4i64vNV },
14053   { "glProgramUniform4iEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4iEXT },
14054   { "glProgramUniform4iv", "GL_ARB_separate_shader_objects", wine_glProgramUniform4iv },
14055   { "glProgramUniform4ivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4ivEXT },
14056   { "glProgramUniform4ui", "GL_ARB_separate_shader_objects", wine_glProgramUniform4ui },
14057   { "glProgramUniform4ui64NV", "GL_NV_gpu_shader5", wine_glProgramUniform4ui64NV },
14058   { "glProgramUniform4ui64vNV", "GL_NV_gpu_shader5", wine_glProgramUniform4ui64vNV },
14059   { "glProgramUniform4uiEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4uiEXT },
14060   { "glProgramUniform4uiv", "GL_ARB_separate_shader_objects", wine_glProgramUniform4uiv },
14061   { "glProgramUniform4uivEXT", "GL_EXT_direct_state_access", wine_glProgramUniform4uivEXT },
14062   { "glProgramUniformHandleui64NV", "GL_NV_bindless_texture", wine_glProgramUniformHandleui64NV },
14063   { "glProgramUniformHandleui64vNV", "GL_NV_bindless_texture", wine_glProgramUniformHandleui64vNV },
14064   { "glProgramUniformMatrix2dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2dv },
14065   { "glProgramUniformMatrix2dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2dvEXT },
14066   { "glProgramUniformMatrix2fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2fv },
14067   { "glProgramUniformMatrix2fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2fvEXT },
14068   { "glProgramUniformMatrix2x3dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2x3dv },
14069   { "glProgramUniformMatrix2x3dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2x3dvEXT },
14070   { "glProgramUniformMatrix2x3fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2x3fv },
14071   { "glProgramUniformMatrix2x3fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2x3fvEXT },
14072   { "glProgramUniformMatrix2x4dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2x4dv },
14073   { "glProgramUniformMatrix2x4dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2x4dvEXT },
14074   { "glProgramUniformMatrix2x4fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix2x4fv },
14075   { "glProgramUniformMatrix2x4fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix2x4fvEXT },
14076   { "glProgramUniformMatrix3dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3dv },
14077   { "glProgramUniformMatrix3dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3dvEXT },
14078   { "glProgramUniformMatrix3fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3fv },
14079   { "glProgramUniformMatrix3fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3fvEXT },
14080   { "glProgramUniformMatrix3x2dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3x2dv },
14081   { "glProgramUniformMatrix3x2dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3x2dvEXT },
14082   { "glProgramUniformMatrix3x2fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3x2fv },
14083   { "glProgramUniformMatrix3x2fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3x2fvEXT },
14084   { "glProgramUniformMatrix3x4dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3x4dv },
14085   { "glProgramUniformMatrix3x4dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3x4dvEXT },
14086   { "glProgramUniformMatrix3x4fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix3x4fv },
14087   { "glProgramUniformMatrix3x4fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix3x4fvEXT },
14088   { "glProgramUniformMatrix4dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4dv },
14089   { "glProgramUniformMatrix4dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4dvEXT },
14090   { "glProgramUniformMatrix4fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4fv },
14091   { "glProgramUniformMatrix4fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4fvEXT },
14092   { "glProgramUniformMatrix4x2dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4x2dv },
14093   { "glProgramUniformMatrix4x2dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4x2dvEXT },
14094   { "glProgramUniformMatrix4x2fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4x2fv },
14095   { "glProgramUniformMatrix4x2fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4x2fvEXT },
14096   { "glProgramUniformMatrix4x3dv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4x3dv },
14097   { "glProgramUniformMatrix4x3dvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4x3dvEXT },
14098   { "glProgramUniformMatrix4x3fv", "GL_ARB_separate_shader_objects", wine_glProgramUniformMatrix4x3fv },
14099   { "glProgramUniformMatrix4x3fvEXT", "GL_EXT_direct_state_access", wine_glProgramUniformMatrix4x3fvEXT },
14100   { "glProgramUniformui64NV", "GL_NV_shader_buffer_load", wine_glProgramUniformui64NV },
14101   { "glProgramUniformui64vNV", "GL_NV_shader_buffer_load", wine_glProgramUniformui64vNV },
14102   { "glProgramVertexLimitNV", "GL_NV_geometry_program4", wine_glProgramVertexLimitNV },
14103   { "glProvokingVertex", "GL_ARB_provoking_vertex", wine_glProvokingVertex },
14104   { "glProvokingVertexEXT", "GL_EXT_provoking_vertex", wine_glProvokingVertexEXT },
14105   { "glPushClientAttribDefaultEXT", "GL_EXT_direct_state_access", wine_glPushClientAttribDefaultEXT },
14106   { "glPushDebugGroup", "GL_KHR_debug", wine_glPushDebugGroup },
14107   { "glQueryCounter", "GL_ARB_timer_query", wine_glQueryCounter },
14108   { "glReadBufferRegion", "GL_KTX_buffer_region", wine_glReadBufferRegion },
14109   { "glReadInstrumentsSGIX", "GL_SGIX_instruments", wine_glReadInstrumentsSGIX },
14110   { "glReadnPixelsARB", "GL_ARB_robustness", wine_glReadnPixelsARB },
14111   { "glReferencePlaneSGIX", "GL_SGIX_reference_plane", wine_glReferencePlaneSGIX },
14112   { "glReleaseShaderCompiler", "GL_ARB_ES2_compatibility", wine_glReleaseShaderCompiler },
14113   { "glRenderbufferStorage", "GL_ARB_framebuffer_object", wine_glRenderbufferStorage },
14114   { "glRenderbufferStorageEXT", "GL_EXT_framebuffer_object", wine_glRenderbufferStorageEXT },
14115   { "glRenderbufferStorageMultisample", "GL_ARB_framebuffer_object", wine_glRenderbufferStorageMultisample },
14116   { "glRenderbufferStorageMultisampleCoverageNV", "GL_NV_framebuffer_multisample_coverage", wine_glRenderbufferStorageMultisampleCoverageNV },
14117   { "glRenderbufferStorageMultisampleEXT", "GL_EXT_framebuffer_multisample", wine_glRenderbufferStorageMultisampleEXT },
14118   { "glReplacementCodePointerSUN", "GL_SUN_triangle_list", wine_glReplacementCodePointerSUN },
14119   { "glReplacementCodeubSUN", "GL_SUN_triangle_list", wine_glReplacementCodeubSUN },
14120   { "glReplacementCodeubvSUN", "GL_SUN_triangle_list", wine_glReplacementCodeubvSUN },
14121   { "glReplacementCodeuiColor3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor3fVertex3fSUN },
14122   { "glReplacementCodeuiColor3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor3fVertex3fvSUN },
14123   { "glReplacementCodeuiColor4fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor4fNormal3fVertex3fSUN },
14124   { "glReplacementCodeuiColor4fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor4fNormal3fVertex3fvSUN },
14125   { "glReplacementCodeuiColor4ubVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor4ubVertex3fSUN },
14126   { "glReplacementCodeuiColor4ubVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiColor4ubVertex3fvSUN },
14127   { "glReplacementCodeuiNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiNormal3fVertex3fSUN },
14128   { "glReplacementCodeuiNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiNormal3fVertex3fvSUN },
14129   { "glReplacementCodeuiSUN", "GL_SUN_triangle_list", wine_glReplacementCodeuiSUN },
14130   { "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN },
14131   { "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN },
14132   { "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN },
14133   { "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN },
14134   { "glReplacementCodeuiTexCoord2fVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fVertex3fSUN },
14135   { "glReplacementCodeuiTexCoord2fVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiTexCoord2fVertex3fvSUN },
14136   { "glReplacementCodeuiVertex3fSUN", "GL_SUN_vertex", wine_glReplacementCodeuiVertex3fSUN },
14137   { "glReplacementCodeuiVertex3fvSUN", "GL_SUN_vertex", wine_glReplacementCodeuiVertex3fvSUN },
14138   { "glReplacementCodeuivSUN", "GL_SUN_triangle_list", wine_glReplacementCodeuivSUN },
14139   { "glReplacementCodeusSUN", "GL_SUN_triangle_list", wine_glReplacementCodeusSUN },
14140   { "glReplacementCodeusvSUN", "GL_SUN_triangle_list", wine_glReplacementCodeusvSUN },
14141   { "glRequestResidentProgramsNV", "GL_NV_vertex_program", wine_glRequestResidentProgramsNV },
14142   { "glResetHistogram", "GL_VERSION_1_2_DEPRECATED", wine_glResetHistogram },
14143   { "glResetHistogramEXT", "GL_EXT_histogram", wine_glResetHistogramEXT },
14144   { "glResetMinmax", "GL_VERSION_1_2_DEPRECATED", wine_glResetMinmax },
14145   { "glResetMinmaxEXT", "GL_EXT_histogram", wine_glResetMinmaxEXT },
14146   { "glResizeBuffersMESA", "GL_MESA_resize_buffers", wine_glResizeBuffersMESA },
14147   { "glResumeTransformFeedback", "GL_ARB_transform_feedback2", wine_glResumeTransformFeedback },
14148   { "glResumeTransformFeedbackNV", "GL_NV_transform_feedback2", wine_glResumeTransformFeedbackNV },
14149   { "glSampleCoverage", "GL_VERSION_1_3", wine_glSampleCoverage },
14150   { "glSampleCoverageARB", "GL_ARB_multisample", wine_glSampleCoverageARB },
14151   { "glSampleMapATI", "GL_ATI_fragment_shader", wine_glSampleMapATI },
14152   { "glSampleMaskEXT", "GL_EXT_multisample", wine_glSampleMaskEXT },
14153   { "glSampleMaskIndexedNV", "GL_NV_explicit_multisample", wine_glSampleMaskIndexedNV },
14154   { "glSampleMaskSGIS", "GL_SGIS_multisample", wine_glSampleMaskSGIS },
14155   { "glSampleMaski", "GL_ARB_texture_multisample", wine_glSampleMaski },
14156   { "glSamplePatternEXT", "GL_EXT_multisample", wine_glSamplePatternEXT },
14157   { "glSamplePatternSGIS", "GL_SGIS_multisample", wine_glSamplePatternSGIS },
14158   { "glSamplerParameterIiv", "GL_ARB_sampler_objects", wine_glSamplerParameterIiv },
14159   { "glSamplerParameterIuiv", "GL_ARB_sampler_objects", wine_glSamplerParameterIuiv },
14160   { "glSamplerParameterf", "GL_ARB_sampler_objects", wine_glSamplerParameterf },
14161   { "glSamplerParameterfv", "GL_ARB_sampler_objects", wine_glSamplerParameterfv },
14162   { "glSamplerParameteri", "GL_ARB_sampler_objects", wine_glSamplerParameteri },
14163   { "glSamplerParameteriv", "GL_ARB_sampler_objects", wine_glSamplerParameteriv },
14164   { "glScissorArrayv", "GL_ARB_viewport_array", wine_glScissorArrayv },
14165   { "glScissorIndexed", "GL_ARB_viewport_array", wine_glScissorIndexed },
14166   { "glScissorIndexedv", "GL_ARB_viewport_array", wine_glScissorIndexedv },
14167   { "glSecondaryColor3b", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3b },
14168   { "glSecondaryColor3bEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3bEXT },
14169   { "glSecondaryColor3bv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3bv },
14170   { "glSecondaryColor3bvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3bvEXT },
14171   { "glSecondaryColor3d", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3d },
14172   { "glSecondaryColor3dEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3dEXT },
14173   { "glSecondaryColor3dv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3dv },
14174   { "glSecondaryColor3dvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3dvEXT },
14175   { "glSecondaryColor3f", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3f },
14176   { "glSecondaryColor3fEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3fEXT },
14177   { "glSecondaryColor3fv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3fv },
14178   { "glSecondaryColor3fvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3fvEXT },
14179   { "glSecondaryColor3hNV", "GL_NV_half_float", wine_glSecondaryColor3hNV },
14180   { "glSecondaryColor3hvNV", "GL_NV_half_float", wine_glSecondaryColor3hvNV },
14181   { "glSecondaryColor3i", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3i },
14182   { "glSecondaryColor3iEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3iEXT },
14183   { "glSecondaryColor3iv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3iv },
14184   { "glSecondaryColor3ivEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3ivEXT },
14185   { "glSecondaryColor3s", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3s },
14186   { "glSecondaryColor3sEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3sEXT },
14187   { "glSecondaryColor3sv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3sv },
14188   { "glSecondaryColor3svEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3svEXT },
14189   { "glSecondaryColor3ub", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3ub },
14190   { "glSecondaryColor3ubEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3ubEXT },
14191   { "glSecondaryColor3ubv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3ubv },
14192   { "glSecondaryColor3ubvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3ubvEXT },
14193   { "glSecondaryColor3ui", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3ui },
14194   { "glSecondaryColor3uiEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3uiEXT },
14195   { "glSecondaryColor3uiv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3uiv },
14196   { "glSecondaryColor3uivEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3uivEXT },
14197   { "glSecondaryColor3us", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3us },
14198   { "glSecondaryColor3usEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3usEXT },
14199   { "glSecondaryColor3usv", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColor3usv },
14200   { "glSecondaryColor3usvEXT", "GL_EXT_secondary_color", wine_glSecondaryColor3usvEXT },
14201   { "glSecondaryColorFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glSecondaryColorFormatNV },
14202   { "glSecondaryColorP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glSecondaryColorP3ui },
14203   { "glSecondaryColorP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glSecondaryColorP3uiv },
14204   { "glSecondaryColorPointer", "GL_VERSION_1_4_DEPRECATED", wine_glSecondaryColorPointer },
14205   { "glSecondaryColorPointerEXT", "GL_EXT_secondary_color", wine_glSecondaryColorPointerEXT },
14206   { "glSecondaryColorPointerListIBM", "GL_IBM_vertex_array_lists", wine_glSecondaryColorPointerListIBM },
14207   { "glSelectPerfMonitorCountersAMD", "GL_AMD_performance_monitor", wine_glSelectPerfMonitorCountersAMD },
14208   { "glSelectTextureCoordSetSGIS", "GL_SGIS_multitexture", wine_glSelectTextureCoordSetSGIS },
14209   { "glSelectTextureSGIS", "GL_SGIS_multitexture", wine_glSelectTextureSGIS },
14210   { "glSeparableFilter2D", "GL_VERSION_1_2_DEPRECATED", wine_glSeparableFilter2D },
14211   { "glSeparableFilter2DEXT", "GL_EXT_convolution", wine_glSeparableFilter2DEXT },
14212   { "glSetFenceAPPLE", "GL_APPLE_fence", wine_glSetFenceAPPLE },
14213   { "glSetFenceNV", "GL_NV_fence", wine_glSetFenceNV },
14214   { "glSetFragmentShaderConstantATI", "GL_ATI_fragment_shader", wine_glSetFragmentShaderConstantATI },
14215   { "glSetInvariantEXT", "GL_EXT_vertex_shader", wine_glSetInvariantEXT },
14216   { "glSetLocalConstantEXT", "GL_EXT_vertex_shader", wine_glSetLocalConstantEXT },
14217   { "glSetMultisamplefvAMD", "GL_AMD_sample_positions", wine_glSetMultisamplefvAMD },
14218   { "glShaderBinary", "GL_ARB_ES2_compatibility", wine_glShaderBinary },
14219   { "glShaderOp1EXT", "GL_EXT_vertex_shader", wine_glShaderOp1EXT },
14220   { "glShaderOp2EXT", "GL_EXT_vertex_shader", wine_glShaderOp2EXT },
14221   { "glShaderOp3EXT", "GL_EXT_vertex_shader", wine_glShaderOp3EXT },
14222   { "glShaderSource", "GL_VERSION_2_0", wine_glShaderSource },
14223   { "glShaderSourceARB", "GL_ARB_shader_objects", wine_glShaderSourceARB },
14224   { "glShaderStorageBlockBinding", "GL_ARB_shader_storage_buffer_object", wine_glShaderStorageBlockBinding },
14225   { "glSharpenTexFuncSGIS", "GL_SGIS_sharpen_texture", wine_glSharpenTexFuncSGIS },
14226   { "glSpriteParameterfSGIX", "GL_SGIX_sprite", wine_glSpriteParameterfSGIX },
14227   { "glSpriteParameterfvSGIX", "GL_SGIX_sprite", wine_glSpriteParameterfvSGIX },
14228   { "glSpriteParameteriSGIX", "GL_SGIX_sprite", wine_glSpriteParameteriSGIX },
14229   { "glSpriteParameterivSGIX", "GL_SGIX_sprite", wine_glSpriteParameterivSGIX },
14230   { "glStartInstrumentsSGIX", "GL_SGIX_instruments", wine_glStartInstrumentsSGIX },
14231   { "glStencilClearTagEXT", "GL_EXT_stencil_clear_tag", wine_glStencilClearTagEXT },
14232   { "glStencilFillPathInstancedNV", "GL_NV_path_rendering", wine_glStencilFillPathInstancedNV },
14233   { "glStencilFillPathNV", "GL_NV_path_rendering", wine_glStencilFillPathNV },
14234   { "glStencilFuncSeparate", "GL_VERSION_2_0", wine_glStencilFuncSeparate },
14235   { "glStencilFuncSeparateATI", "GL_ATI_separate_stencil", wine_glStencilFuncSeparateATI },
14236   { "glStencilMaskSeparate", "GL_VERSION_2_0", wine_glStencilMaskSeparate },
14237   { "glStencilOpSeparate", "GL_VERSION_2_0", wine_glStencilOpSeparate },
14238   { "glStencilOpSeparateATI", "GL_ATI_separate_stencil", wine_glStencilOpSeparateATI },
14239   { "glStencilOpValueAMD", "GL_AMD_stencil_operation_extended", wine_glStencilOpValueAMD },
14240   { "glStencilStrokePathInstancedNV", "GL_NV_path_rendering", wine_glStencilStrokePathInstancedNV },
14241   { "glStencilStrokePathNV", "GL_NV_path_rendering", wine_glStencilStrokePathNV },
14242   { "glStopInstrumentsSGIX", "GL_SGIX_instruments", wine_glStopInstrumentsSGIX },
14243   { "glStringMarkerGREMEDY", "GL_GREMEDY_string_marker", wine_glStringMarkerGREMEDY },
14244   { "glSwizzleEXT", "GL_EXT_vertex_shader", wine_glSwizzleEXT },
14245   { "glTagSampleBufferSGIX", "GL_SGIX_tag_sample_buffer", wine_glTagSampleBufferSGIX },
14246   { "glTangent3bEXT", "GL_EXT_coordinate_frame", wine_glTangent3bEXT },
14247   { "glTangent3bvEXT", "GL_EXT_coordinate_frame", wine_glTangent3bvEXT },
14248   { "glTangent3dEXT", "GL_EXT_coordinate_frame", wine_glTangent3dEXT },
14249   { "glTangent3dvEXT", "GL_EXT_coordinate_frame", wine_glTangent3dvEXT },
14250   { "glTangent3fEXT", "GL_EXT_coordinate_frame", wine_glTangent3fEXT },
14251   { "glTangent3fvEXT", "GL_EXT_coordinate_frame", wine_glTangent3fvEXT },
14252   { "glTangent3iEXT", "GL_EXT_coordinate_frame", wine_glTangent3iEXT },
14253   { "glTangent3ivEXT", "GL_EXT_coordinate_frame", wine_glTangent3ivEXT },
14254   { "glTangent3sEXT", "GL_EXT_coordinate_frame", wine_glTangent3sEXT },
14255   { "glTangent3svEXT", "GL_EXT_coordinate_frame", wine_glTangent3svEXT },
14256   { "glTangentPointerEXT", "GL_EXT_coordinate_frame", wine_glTangentPointerEXT },
14257   { "glTbufferMask3DFX", "GL_3DFX_tbuffer", wine_glTbufferMask3DFX },
14258   { "glTessellationFactorAMD", "GL_AMD_vertex_shader_tesselator", wine_glTessellationFactorAMD },
14259   { "glTessellationModeAMD", "GL_AMD_vertex_shader_tesselator", wine_glTessellationModeAMD },
14260   { "glTestFenceAPPLE", "GL_APPLE_fence", wine_glTestFenceAPPLE },
14261   { "glTestFenceNV", "GL_NV_fence", wine_glTestFenceNV },
14262   { "glTestObjectAPPLE", "GL_APPLE_fence", wine_glTestObjectAPPLE },
14263   { "glTexBuffer", "GL_VERSION_3_1", wine_glTexBuffer },
14264   { "glTexBufferARB", "GL_ARB_texture_buffer_object", wine_glTexBufferARB },
14265   { "glTexBufferEXT", "GL_EXT_texture_buffer_object", wine_glTexBufferEXT },
14266   { "glTexBufferRange", "GL_ARB_texture_buffer_range", wine_glTexBufferRange },
14267   { "glTexBumpParameterfvATI", "GL_ATI_envmap_bumpmap", wine_glTexBumpParameterfvATI },
14268   { "glTexBumpParameterivATI", "GL_ATI_envmap_bumpmap", wine_glTexBumpParameterivATI },
14269   { "glTexCoord1hNV", "GL_NV_half_float", wine_glTexCoord1hNV },
14270   { "glTexCoord1hvNV", "GL_NV_half_float", wine_glTexCoord1hvNV },
14271   { "glTexCoord2fColor3fVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fColor3fVertex3fSUN },
14272   { "glTexCoord2fColor3fVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fColor3fVertex3fvSUN },
14273   { "glTexCoord2fColor4fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fColor4fNormal3fVertex3fSUN },
14274   { "glTexCoord2fColor4fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fColor4fNormal3fVertex3fvSUN },
14275   { "glTexCoord2fColor4ubVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fColor4ubVertex3fSUN },
14276   { "glTexCoord2fColor4ubVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fColor4ubVertex3fvSUN },
14277   { "glTexCoord2fNormal3fVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fNormal3fVertex3fSUN },
14278   { "glTexCoord2fNormal3fVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fNormal3fVertex3fvSUN },
14279   { "glTexCoord2fVertex3fSUN", "GL_SUN_vertex", wine_glTexCoord2fVertex3fSUN },
14280   { "glTexCoord2fVertex3fvSUN", "GL_SUN_vertex", wine_glTexCoord2fVertex3fvSUN },
14281   { "glTexCoord2hNV", "GL_NV_half_float", wine_glTexCoord2hNV },
14282   { "glTexCoord2hvNV", "GL_NV_half_float", wine_glTexCoord2hvNV },
14283   { "glTexCoord3hNV", "GL_NV_half_float", wine_glTexCoord3hNV },
14284   { "glTexCoord3hvNV", "GL_NV_half_float", wine_glTexCoord3hvNV },
14285   { "glTexCoord4fColor4fNormal3fVertex4fSUN", "GL_SUN_vertex", wine_glTexCoord4fColor4fNormal3fVertex4fSUN },
14286   { "glTexCoord4fColor4fNormal3fVertex4fvSUN", "GL_SUN_vertex", wine_glTexCoord4fColor4fNormal3fVertex4fvSUN },
14287   { "glTexCoord4fVertex4fSUN", "GL_SUN_vertex", wine_glTexCoord4fVertex4fSUN },
14288   { "glTexCoord4fVertex4fvSUN", "GL_SUN_vertex", wine_glTexCoord4fVertex4fvSUN },
14289   { "glTexCoord4hNV", "GL_NV_half_float", wine_glTexCoord4hNV },
14290   { "glTexCoord4hvNV", "GL_NV_half_float", wine_glTexCoord4hvNV },
14291   { "glTexCoordFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glTexCoordFormatNV },
14292   { "glTexCoordP1ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP1ui },
14293   { "glTexCoordP1uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP1uiv },
14294   { "glTexCoordP2ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP2ui },
14295   { "glTexCoordP2uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP2uiv },
14296   { "glTexCoordP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP3ui },
14297   { "glTexCoordP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP3uiv },
14298   { "glTexCoordP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP4ui },
14299   { "glTexCoordP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glTexCoordP4uiv },
14300   { "glTexCoordPointerEXT", "GL_EXT_vertex_array", wine_glTexCoordPointerEXT },
14301   { "glTexCoordPointerListIBM", "GL_IBM_vertex_array_lists", wine_glTexCoordPointerListIBM },
14302   { "glTexCoordPointervINTEL", "GL_INTEL_parallel_arrays", wine_glTexCoordPointervINTEL },
14303   { "glTexFilterFuncSGIS", "GL_SGIS_texture_filter4", wine_glTexFilterFuncSGIS },
14304   { "glTexImage2DMultisample", "GL_ARB_texture_multisample", wine_glTexImage2DMultisample },
14305   { "glTexImage2DMultisampleCoverageNV", "GL_NV_texture_multisample", wine_glTexImage2DMultisampleCoverageNV },
14306   { "glTexImage3D", "GL_VERSION_1_2", wine_glTexImage3D },
14307   { "glTexImage3DEXT", "GL_EXT_texture3D", wine_glTexImage3DEXT },
14308   { "glTexImage3DMultisample", "GL_ARB_texture_multisample", wine_glTexImage3DMultisample },
14309   { "glTexImage3DMultisampleCoverageNV", "GL_NV_texture_multisample", wine_glTexImage3DMultisampleCoverageNV },
14310   { "glTexImage4DSGIS", "GL_SGIS_texture4D", wine_glTexImage4DSGIS },
14311   { "glTexParameterIiv", "GL_VERSION_3_0", wine_glTexParameterIiv },
14312   { "glTexParameterIivEXT", "GL_EXT_texture_integer", wine_glTexParameterIivEXT },
14313   { "glTexParameterIuiv", "GL_VERSION_3_0", wine_glTexParameterIuiv },
14314   { "glTexParameterIuivEXT", "GL_EXT_texture_integer", wine_glTexParameterIuivEXT },
14315   { "glTexRenderbufferNV", "GL_NV_explicit_multisample", wine_glTexRenderbufferNV },
14316   { "glTexStorage1D", "GL_ARB_texture_storage", wine_glTexStorage1D },
14317   { "glTexStorage2D", "GL_ARB_texture_storage", wine_glTexStorage2D },
14318   { "glTexStorage2DMultisample", "GL_ARB_texture_storage_multisample", wine_glTexStorage2DMultisample },
14319   { "glTexStorage3D", "GL_ARB_texture_storage", wine_glTexStorage3D },
14320   { "glTexStorage3DMultisample", "GL_ARB_texture_storage_multisample", wine_glTexStorage3DMultisample },
14321   { "glTexSubImage1DEXT", "GL_EXT_subtexture", wine_glTexSubImage1DEXT },
14322   { "glTexSubImage2DEXT", "GL_EXT_subtexture", wine_glTexSubImage2DEXT },
14323   { "glTexSubImage3D", "GL_VERSION_1_2", wine_glTexSubImage3D },
14324   { "glTexSubImage3DEXT", "GL_EXT_texture3D", wine_glTexSubImage3DEXT },
14325   { "glTexSubImage4DSGIS", "GL_SGIS_texture4D", wine_glTexSubImage4DSGIS },
14326   { "glTextureBarrierNV", "GL_NV_texture_barrier", wine_glTextureBarrierNV },
14327   { "glTextureBufferEXT", "GL_EXT_direct_state_access", wine_glTextureBufferEXT },
14328   { "glTextureBufferRangeEXT", "GL_ARB_texture_buffer_range", wine_glTextureBufferRangeEXT },
14329   { "glTextureColorMaskSGIS", "GL_SGIS_texture_color_mask", wine_glTextureColorMaskSGIS },
14330   { "glTextureImage1DEXT", "GL_EXT_direct_state_access", wine_glTextureImage1DEXT },
14331   { "glTextureImage2DEXT", "GL_EXT_direct_state_access", wine_glTextureImage2DEXT },
14332   { "glTextureImage2DMultisampleCoverageNV", "GL_NV_texture_multisample", wine_glTextureImage2DMultisampleCoverageNV },
14333   { "glTextureImage2DMultisampleNV", "GL_NV_texture_multisample", wine_glTextureImage2DMultisampleNV },
14334   { "glTextureImage3DEXT", "GL_EXT_direct_state_access", wine_glTextureImage3DEXT },
14335   { "glTextureImage3DMultisampleCoverageNV", "GL_NV_texture_multisample", wine_glTextureImage3DMultisampleCoverageNV },
14336   { "glTextureImage3DMultisampleNV", "GL_NV_texture_multisample", wine_glTextureImage3DMultisampleNV },
14337   { "glTextureLightEXT", "GL_EXT_light_texture", wine_glTextureLightEXT },
14338   { "glTextureMaterialEXT", "GL_EXT_light_texture", wine_glTextureMaterialEXT },
14339   { "glTextureNormalEXT", "GL_EXT_texture_perturb_normal", wine_glTextureNormalEXT },
14340   { "glTextureParameterIivEXT", "GL_EXT_direct_state_access", wine_glTextureParameterIivEXT },
14341   { "glTextureParameterIuivEXT", "GL_EXT_direct_state_access", wine_glTextureParameterIuivEXT },
14342   { "glTextureParameterfEXT", "GL_EXT_direct_state_access", wine_glTextureParameterfEXT },
14343   { "glTextureParameterfvEXT", "GL_EXT_direct_state_access", wine_glTextureParameterfvEXT },
14344   { "glTextureParameteriEXT", "GL_EXT_direct_state_access", wine_glTextureParameteriEXT },
14345   { "glTextureParameterivEXT", "GL_EXT_direct_state_access", wine_glTextureParameterivEXT },
14346   { "glTextureRangeAPPLE", "GL_APPLE_texture_range", wine_glTextureRangeAPPLE },
14347   { "glTextureRenderbufferEXT", "GL_EXT_direct_state_access", wine_glTextureRenderbufferEXT },
14348   { "glTextureStorage1DEXT", "GL_ARB_texture_storage", wine_glTextureStorage1DEXT },
14349   { "glTextureStorage2DEXT", "GL_ARB_texture_storage", wine_glTextureStorage2DEXT },
14350   { "glTextureStorage2DMultisampleEXT", "GL_ARB_texture_storage_multisample", wine_glTextureStorage2DMultisampleEXT },
14351   { "glTextureStorage3DEXT", "GL_ARB_texture_storage", wine_glTextureStorage3DEXT },
14352   { "glTextureStorage3DMultisampleEXT", "GL_ARB_texture_storage_multisample", wine_glTextureStorage3DMultisampleEXT },
14353   { "glTextureSubImage1DEXT", "GL_EXT_direct_state_access", wine_glTextureSubImage1DEXT },
14354   { "glTextureSubImage2DEXT", "GL_EXT_direct_state_access", wine_glTextureSubImage2DEXT },
14355   { "glTextureSubImage3DEXT", "GL_EXT_direct_state_access", wine_glTextureSubImage3DEXT },
14356   { "glTextureView", "GL_ARB_texture_view", wine_glTextureView },
14357   { "glTrackMatrixNV", "GL_NV_vertex_program", wine_glTrackMatrixNV },
14358   { "glTransformFeedbackAttribsNV", "GL_NV_transform_feedback", wine_glTransformFeedbackAttribsNV },
14359   { "glTransformFeedbackStreamAttribsNV", "GL_NV_transform_feedback", wine_glTransformFeedbackStreamAttribsNV },
14360   { "glTransformFeedbackVaryings", "GL_VERSION_3_0", wine_glTransformFeedbackVaryings },
14361   { "glTransformFeedbackVaryingsEXT", "GL_EXT_transform_feedback", wine_glTransformFeedbackVaryingsEXT },
14362   { "glTransformFeedbackVaryingsNV", "GL_NV_transform_feedback", wine_glTransformFeedbackVaryingsNV },
14363   { "glTransformPathNV", "GL_NV_path_rendering", wine_glTransformPathNV },
14364   { "glUniform1d", "GL_ARB_gpu_shader_fp64", wine_glUniform1d },
14365   { "glUniform1dv", "GL_ARB_gpu_shader_fp64", wine_glUniform1dv },
14366   { "glUniform1f", "GL_VERSION_2_0", wine_glUniform1f },
14367   { "glUniform1fARB", "GL_ARB_shader_objects", wine_glUniform1fARB },
14368   { "glUniform1fv", "GL_VERSION_2_0", wine_glUniform1fv },
14369   { "glUniform1fvARB", "GL_ARB_shader_objects", wine_glUniform1fvARB },
14370   { "glUniform1i", "GL_VERSION_2_0", wine_glUniform1i },
14371   { "glUniform1i64NV", "GL_NV_gpu_shader5", wine_glUniform1i64NV },
14372   { "glUniform1i64vNV", "GL_NV_gpu_shader5", wine_glUniform1i64vNV },
14373   { "glUniform1iARB", "GL_ARB_shader_objects", wine_glUniform1iARB },
14374   { "glUniform1iv", "GL_VERSION_2_0", wine_glUniform1iv },
14375   { "glUniform1ivARB", "GL_ARB_shader_objects", wine_glUniform1ivARB },
14376   { "glUniform1ui", "GL_VERSION_3_0", wine_glUniform1ui },
14377   { "glUniform1ui64NV", "GL_NV_gpu_shader5", wine_glUniform1ui64NV },
14378   { "glUniform1ui64vNV", "GL_NV_gpu_shader5", wine_glUniform1ui64vNV },
14379   { "glUniform1uiEXT", "GL_EXT_gpu_shader4", wine_glUniform1uiEXT },
14380   { "glUniform1uiv", "GL_VERSION_3_0", wine_glUniform1uiv },
14381   { "glUniform1uivEXT", "GL_EXT_gpu_shader4", wine_glUniform1uivEXT },
14382   { "glUniform2d", "GL_ARB_gpu_shader_fp64", wine_glUniform2d },
14383   { "glUniform2dv", "GL_ARB_gpu_shader_fp64", wine_glUniform2dv },
14384   { "glUniform2f", "GL_VERSION_2_0", wine_glUniform2f },
14385   { "glUniform2fARB", "GL_ARB_shader_objects", wine_glUniform2fARB },
14386   { "glUniform2fv", "GL_VERSION_2_0", wine_glUniform2fv },
14387   { "glUniform2fvARB", "GL_ARB_shader_objects", wine_glUniform2fvARB },
14388   { "glUniform2i", "GL_VERSION_2_0", wine_glUniform2i },
14389   { "glUniform2i64NV", "GL_NV_gpu_shader5", wine_glUniform2i64NV },
14390   { "glUniform2i64vNV", "GL_NV_gpu_shader5", wine_glUniform2i64vNV },
14391   { "glUniform2iARB", "GL_ARB_shader_objects", wine_glUniform2iARB },
14392   { "glUniform2iv", "GL_VERSION_2_0", wine_glUniform2iv },
14393   { "glUniform2ivARB", "GL_ARB_shader_objects", wine_glUniform2ivARB },
14394   { "glUniform2ui", "GL_VERSION_3_0", wine_glUniform2ui },
14395   { "glUniform2ui64NV", "GL_NV_gpu_shader5", wine_glUniform2ui64NV },
14396   { "glUniform2ui64vNV", "GL_NV_gpu_shader5", wine_glUniform2ui64vNV },
14397   { "glUniform2uiEXT", "GL_EXT_gpu_shader4", wine_glUniform2uiEXT },
14398   { "glUniform2uiv", "GL_VERSION_3_0", wine_glUniform2uiv },
14399   { "glUniform2uivEXT", "GL_EXT_gpu_shader4", wine_glUniform2uivEXT },
14400   { "glUniform3d", "GL_ARB_gpu_shader_fp64", wine_glUniform3d },
14401   { "glUniform3dv", "GL_ARB_gpu_shader_fp64", wine_glUniform3dv },
14402   { "glUniform3f", "GL_VERSION_2_0", wine_glUniform3f },
14403   { "glUniform3fARB", "GL_ARB_shader_objects", wine_glUniform3fARB },
14404   { "glUniform3fv", "GL_VERSION_2_0", wine_glUniform3fv },
14405   { "glUniform3fvARB", "GL_ARB_shader_objects", wine_glUniform3fvARB },
14406   { "glUniform3i", "GL_VERSION_2_0", wine_glUniform3i },
14407   { "glUniform3i64NV", "GL_NV_gpu_shader5", wine_glUniform3i64NV },
14408   { "glUniform3i64vNV", "GL_NV_gpu_shader5", wine_glUniform3i64vNV },
14409   { "glUniform3iARB", "GL_ARB_shader_objects", wine_glUniform3iARB },
14410   { "glUniform3iv", "GL_VERSION_2_0", wine_glUniform3iv },
14411   { "glUniform3ivARB", "GL_ARB_shader_objects", wine_glUniform3ivARB },
14412   { "glUniform3ui", "GL_VERSION_3_0", wine_glUniform3ui },
14413   { "glUniform3ui64NV", "GL_NV_gpu_shader5", wine_glUniform3ui64NV },
14414   { "glUniform3ui64vNV", "GL_NV_gpu_shader5", wine_glUniform3ui64vNV },
14415   { "glUniform3uiEXT", "GL_EXT_gpu_shader4", wine_glUniform3uiEXT },
14416   { "glUniform3uiv", "GL_VERSION_3_0", wine_glUniform3uiv },
14417   { "glUniform3uivEXT", "GL_EXT_gpu_shader4", wine_glUniform3uivEXT },
14418   { "glUniform4d", "GL_ARB_gpu_shader_fp64", wine_glUniform4d },
14419   { "glUniform4dv", "GL_ARB_gpu_shader_fp64", wine_glUniform4dv },
14420   { "glUniform4f", "GL_VERSION_2_0", wine_glUniform4f },
14421   { "glUniform4fARB", "GL_ARB_shader_objects", wine_glUniform4fARB },
14422   { "glUniform4fv", "GL_VERSION_2_0", wine_glUniform4fv },
14423   { "glUniform4fvARB", "GL_ARB_shader_objects", wine_glUniform4fvARB },
14424   { "glUniform4i", "GL_VERSION_2_0", wine_glUniform4i },
14425   { "glUniform4i64NV", "GL_NV_gpu_shader5", wine_glUniform4i64NV },
14426   { "glUniform4i64vNV", "GL_NV_gpu_shader5", wine_glUniform4i64vNV },
14427   { "glUniform4iARB", "GL_ARB_shader_objects", wine_glUniform4iARB },
14428   { "glUniform4iv", "GL_VERSION_2_0", wine_glUniform4iv },
14429   { "glUniform4ivARB", "GL_ARB_shader_objects", wine_glUniform4ivARB },
14430   { "glUniform4ui", "GL_VERSION_3_0", wine_glUniform4ui },
14431   { "glUniform4ui64NV", "GL_NV_gpu_shader5", wine_glUniform4ui64NV },
14432   { "glUniform4ui64vNV", "GL_NV_gpu_shader5", wine_glUniform4ui64vNV },
14433   { "glUniform4uiEXT", "GL_EXT_gpu_shader4", wine_glUniform4uiEXT },
14434   { "glUniform4uiv", "GL_VERSION_3_0", wine_glUniform4uiv },
14435   { "glUniform4uivEXT", "GL_EXT_gpu_shader4", wine_glUniform4uivEXT },
14436   { "glUniformBlockBinding", "GL_ARB_uniform_buffer_object", wine_glUniformBlockBinding },
14437   { "glUniformBufferEXT", "GL_EXT_bindable_uniform", wine_glUniformBufferEXT },
14438   { "glUniformHandleui64NV", "GL_NV_bindless_texture", wine_glUniformHandleui64NV },
14439   { "glUniformHandleui64vNV", "GL_NV_bindless_texture", wine_glUniformHandleui64vNV },
14440   { "glUniformMatrix2dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix2dv },
14441   { "glUniformMatrix2fv", "GL_VERSION_2_0", wine_glUniformMatrix2fv },
14442   { "glUniformMatrix2fvARB", "GL_ARB_shader_objects", wine_glUniformMatrix2fvARB },
14443   { "glUniformMatrix2x3dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix2x3dv },
14444   { "glUniformMatrix2x3fv", "GL_VERSION_2_1", wine_glUniformMatrix2x3fv },
14445   { "glUniformMatrix2x4dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix2x4dv },
14446   { "glUniformMatrix2x4fv", "GL_VERSION_2_1", wine_glUniformMatrix2x4fv },
14447   { "glUniformMatrix3dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix3dv },
14448   { "glUniformMatrix3fv", "GL_VERSION_2_0", wine_glUniformMatrix3fv },
14449   { "glUniformMatrix3fvARB", "GL_ARB_shader_objects", wine_glUniformMatrix3fvARB },
14450   { "glUniformMatrix3x2dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix3x2dv },
14451   { "glUniformMatrix3x2fv", "GL_VERSION_2_1", wine_glUniformMatrix3x2fv },
14452   { "glUniformMatrix3x4dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix3x4dv },
14453   { "glUniformMatrix3x4fv", "GL_VERSION_2_1", wine_glUniformMatrix3x4fv },
14454   { "glUniformMatrix4dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix4dv },
14455   { "glUniformMatrix4fv", "GL_VERSION_2_0", wine_glUniformMatrix4fv },
14456   { "glUniformMatrix4fvARB", "GL_ARB_shader_objects", wine_glUniformMatrix4fvARB },
14457   { "glUniformMatrix4x2dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix4x2dv },
14458   { "glUniformMatrix4x2fv", "GL_VERSION_2_1", wine_glUniformMatrix4x2fv },
14459   { "glUniformMatrix4x3dv", "GL_ARB_gpu_shader_fp64", wine_glUniformMatrix4x3dv },
14460   { "glUniformMatrix4x3fv", "GL_VERSION_2_1", wine_glUniformMatrix4x3fv },
14461   { "glUniformSubroutinesuiv", "GL_ARB_shader_subroutine", wine_glUniformSubroutinesuiv },
14462   { "glUniformui64NV", "GL_NV_shader_buffer_load", wine_glUniformui64NV },
14463   { "glUniformui64vNV", "GL_NV_shader_buffer_load", wine_glUniformui64vNV },
14464   { "glUnlockArraysEXT", "GL_EXT_compiled_vertex_array", wine_glUnlockArraysEXT },
14465   { "glUnmapBuffer", "GL_VERSION_1_5", wine_glUnmapBuffer },
14466   { "glUnmapBufferARB", "GL_ARB_vertex_buffer_object", wine_glUnmapBufferARB },
14467   { "glUnmapNamedBufferEXT", "GL_EXT_direct_state_access", wine_glUnmapNamedBufferEXT },
14468   { "glUnmapObjectBufferATI", "GL_ATI_map_object_buffer", wine_glUnmapObjectBufferATI },
14469   { "glUpdateObjectBufferATI", "GL_ATI_vertex_array_object", wine_glUpdateObjectBufferATI },
14470   { "glUseProgram", "GL_VERSION_2_0", wine_glUseProgram },
14471   { "glUseProgramObjectARB", "GL_ARB_shader_objects", wine_glUseProgramObjectARB },
14472   { "glUseProgramStages", "GL_ARB_separate_shader_objects", wine_glUseProgramStages },
14473   { "glUseShaderProgramEXT", "GL_EXT_separate_shader_objects", wine_glUseShaderProgramEXT },
14474   { "glVDPAUFiniNV", "GL_NV_vdpau_interop", wine_glVDPAUFiniNV },
14475   { "glVDPAUGetSurfaceivNV", "GL_NV_vdpau_interop", wine_glVDPAUGetSurfaceivNV },
14476   { "glVDPAUInitNV", "GL_NV_vdpau_interop", wine_glVDPAUInitNV },
14477   { "glVDPAUIsSurfaceNV", "GL_NV_vdpau_interop", wine_glVDPAUIsSurfaceNV },
14478   { "glVDPAUMapSurfacesNV", "GL_NV_vdpau_interop", wine_glVDPAUMapSurfacesNV },
14479   { "glVDPAURegisterOutputSurfaceNV", "GL_NV_vdpau_interop", wine_glVDPAURegisterOutputSurfaceNV },
14480   { "glVDPAURegisterVideoSurfaceNV", "GL_NV_vdpau_interop", wine_glVDPAURegisterVideoSurfaceNV },
14481   { "glVDPAUSurfaceAccessNV", "GL_NV_vdpau_interop", wine_glVDPAUSurfaceAccessNV },
14482   { "glVDPAUUnmapSurfacesNV", "GL_NV_vdpau_interop", wine_glVDPAUUnmapSurfacesNV },
14483   { "glVDPAUUnregisterSurfaceNV", "GL_NV_vdpau_interop", wine_glVDPAUUnregisterSurfaceNV },
14484   { "glValidateProgram", "GL_VERSION_2_0", wine_glValidateProgram },
14485   { "glValidateProgramARB", "GL_ARB_shader_objects", wine_glValidateProgramARB },
14486   { "glValidateProgramPipeline", "GL_ARB_separate_shader_objects", wine_glValidateProgramPipeline },
14487   { "glVariantArrayObjectATI", "GL_ATI_vertex_array_object", wine_glVariantArrayObjectATI },
14488   { "glVariantPointerEXT", "GL_EXT_vertex_shader", wine_glVariantPointerEXT },
14489   { "glVariantbvEXT", "GL_EXT_vertex_shader", wine_glVariantbvEXT },
14490   { "glVariantdvEXT", "GL_EXT_vertex_shader", wine_glVariantdvEXT },
14491   { "glVariantfvEXT", "GL_EXT_vertex_shader", wine_glVariantfvEXT },
14492   { "glVariantivEXT", "GL_EXT_vertex_shader", wine_glVariantivEXT },
14493   { "glVariantsvEXT", "GL_EXT_vertex_shader", wine_glVariantsvEXT },
14494   { "glVariantubvEXT", "GL_EXT_vertex_shader", wine_glVariantubvEXT },
14495   { "glVariantuivEXT", "GL_EXT_vertex_shader", wine_glVariantuivEXT },
14496   { "glVariantusvEXT", "GL_EXT_vertex_shader", wine_glVariantusvEXT },
14497   { "glVertex2hNV", "GL_NV_half_float", wine_glVertex2hNV },
14498   { "glVertex2hvNV", "GL_NV_half_float", wine_glVertex2hvNV },
14499   { "glVertex3hNV", "GL_NV_half_float", wine_glVertex3hNV },
14500   { "glVertex3hvNV", "GL_NV_half_float", wine_glVertex3hvNV },
14501   { "glVertex4hNV", "GL_NV_half_float", wine_glVertex4hNV },
14502   { "glVertex4hvNV", "GL_NV_half_float", wine_glVertex4hvNV },
14503   { "glVertexArrayBindVertexBufferEXT", "GL_ARB_vertex_attrib_binding", wine_glVertexArrayBindVertexBufferEXT },
14504   { "glVertexArrayParameteriAPPLE", "GL_APPLE_vertex_array_range", wine_glVertexArrayParameteriAPPLE },
14505   { "glVertexArrayRangeAPPLE", "GL_APPLE_vertex_array_range", wine_glVertexArrayRangeAPPLE },
14506   { "glVertexArrayRangeNV", "GL_NV_vertex_array_range", wine_glVertexArrayRangeNV },
14507   { "glVertexArrayVertexAttribBindingEXT", "GL_ARB_vertex_attrib_binding", wine_glVertexArrayVertexAttribBindingEXT },
14508   { "glVertexArrayVertexAttribFormatEXT", "GL_ARB_vertex_attrib_binding", wine_glVertexArrayVertexAttribFormatEXT },
14509   { "glVertexArrayVertexAttribIFormatEXT", "GL_ARB_vertex_attrib_binding", wine_glVertexArrayVertexAttribIFormatEXT },
14510   { "glVertexArrayVertexAttribLFormatEXT", "GL_ARB_vertex_attrib_binding", wine_glVertexArrayVertexAttribLFormatEXT },
14511   { "glVertexArrayVertexAttribLOffsetEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexArrayVertexAttribLOffsetEXT },
14512   { "glVertexArrayVertexBindingDivisorEXT", "GL_ARB_vertex_attrib_binding", wine_glVertexArrayVertexBindingDivisorEXT },
14513   { "glVertexAttrib1d", "GL_VERSION_2_0", wine_glVertexAttrib1d },
14514   { "glVertexAttrib1dARB", "GL_ARB_vertex_program", wine_glVertexAttrib1dARB },
14515   { "glVertexAttrib1dNV", "GL_NV_vertex_program", wine_glVertexAttrib1dNV },
14516   { "glVertexAttrib1dv", "GL_VERSION_2_0", wine_glVertexAttrib1dv },
14517   { "glVertexAttrib1dvARB", "GL_ARB_vertex_program", wine_glVertexAttrib1dvARB },
14518   { "glVertexAttrib1dvNV", "GL_NV_vertex_program", wine_glVertexAttrib1dvNV },
14519   { "glVertexAttrib1f", "GL_VERSION_2_0", wine_glVertexAttrib1f },
14520   { "glVertexAttrib1fARB", "GL_ARB_vertex_program", wine_glVertexAttrib1fARB },
14521   { "glVertexAttrib1fNV", "GL_NV_vertex_program", wine_glVertexAttrib1fNV },
14522   { "glVertexAttrib1fv", "GL_VERSION_2_0", wine_glVertexAttrib1fv },
14523   { "glVertexAttrib1fvARB", "GL_ARB_vertex_program", wine_glVertexAttrib1fvARB },
14524   { "glVertexAttrib1fvNV", "GL_NV_vertex_program", wine_glVertexAttrib1fvNV },
14525   { "glVertexAttrib1hNV", "GL_NV_half_float", wine_glVertexAttrib1hNV },
14526   { "glVertexAttrib1hvNV", "GL_NV_half_float", wine_glVertexAttrib1hvNV },
14527   { "glVertexAttrib1s", "GL_VERSION_2_0", wine_glVertexAttrib1s },
14528   { "glVertexAttrib1sARB", "GL_ARB_vertex_program", wine_glVertexAttrib1sARB },
14529   { "glVertexAttrib1sNV", "GL_NV_vertex_program", wine_glVertexAttrib1sNV },
14530   { "glVertexAttrib1sv", "GL_VERSION_2_0", wine_glVertexAttrib1sv },
14531   { "glVertexAttrib1svARB", "GL_ARB_vertex_program", wine_glVertexAttrib1svARB },
14532   { "glVertexAttrib1svNV", "GL_NV_vertex_program", wine_glVertexAttrib1svNV },
14533   { "glVertexAttrib2d", "GL_VERSION_2_0", wine_glVertexAttrib2d },
14534   { "glVertexAttrib2dARB", "GL_ARB_vertex_program", wine_glVertexAttrib2dARB },
14535   { "glVertexAttrib2dNV", "GL_NV_vertex_program", wine_glVertexAttrib2dNV },
14536   { "glVertexAttrib2dv", "GL_VERSION_2_0", wine_glVertexAttrib2dv },
14537   { "glVertexAttrib2dvARB", "GL_ARB_vertex_program", wine_glVertexAttrib2dvARB },
14538   { "glVertexAttrib2dvNV", "GL_NV_vertex_program", wine_glVertexAttrib2dvNV },
14539   { "glVertexAttrib2f", "GL_VERSION_2_0", wine_glVertexAttrib2f },
14540   { "glVertexAttrib2fARB", "GL_ARB_vertex_program", wine_glVertexAttrib2fARB },
14541   { "glVertexAttrib2fNV", "GL_NV_vertex_program", wine_glVertexAttrib2fNV },
14542   { "glVertexAttrib2fv", "GL_VERSION_2_0", wine_glVertexAttrib2fv },
14543   { "glVertexAttrib2fvARB", "GL_ARB_vertex_program", wine_glVertexAttrib2fvARB },
14544   { "glVertexAttrib2fvNV", "GL_NV_vertex_program", wine_glVertexAttrib2fvNV },
14545   { "glVertexAttrib2hNV", "GL_NV_half_float", wine_glVertexAttrib2hNV },
14546   { "glVertexAttrib2hvNV", "GL_NV_half_float", wine_glVertexAttrib2hvNV },
14547   { "glVertexAttrib2s", "GL_VERSION_2_0", wine_glVertexAttrib2s },
14548   { "glVertexAttrib2sARB", "GL_ARB_vertex_program", wine_glVertexAttrib2sARB },
14549   { "glVertexAttrib2sNV", "GL_NV_vertex_program", wine_glVertexAttrib2sNV },
14550   { "glVertexAttrib2sv", "GL_VERSION_2_0", wine_glVertexAttrib2sv },
14551   { "glVertexAttrib2svARB", "GL_ARB_vertex_program", wine_glVertexAttrib2svARB },
14552   { "glVertexAttrib2svNV", "GL_NV_vertex_program", wine_glVertexAttrib2svNV },
14553   { "glVertexAttrib3d", "GL_VERSION_2_0", wine_glVertexAttrib3d },
14554   { "glVertexAttrib3dARB", "GL_ARB_vertex_program", wine_glVertexAttrib3dARB },
14555   { "glVertexAttrib3dNV", "GL_NV_vertex_program", wine_glVertexAttrib3dNV },
14556   { "glVertexAttrib3dv", "GL_VERSION_2_0", wine_glVertexAttrib3dv },
14557   { "glVertexAttrib3dvARB", "GL_ARB_vertex_program", wine_glVertexAttrib3dvARB },
14558   { "glVertexAttrib3dvNV", "GL_NV_vertex_program", wine_glVertexAttrib3dvNV },
14559   { "glVertexAttrib3f", "GL_VERSION_2_0", wine_glVertexAttrib3f },
14560   { "glVertexAttrib3fARB", "GL_ARB_vertex_program", wine_glVertexAttrib3fARB },
14561   { "glVertexAttrib3fNV", "GL_NV_vertex_program", wine_glVertexAttrib3fNV },
14562   { "glVertexAttrib3fv", "GL_VERSION_2_0", wine_glVertexAttrib3fv },
14563   { "glVertexAttrib3fvARB", "GL_ARB_vertex_program", wine_glVertexAttrib3fvARB },
14564   { "glVertexAttrib3fvNV", "GL_NV_vertex_program", wine_glVertexAttrib3fvNV },
14565   { "glVertexAttrib3hNV", "GL_NV_half_float", wine_glVertexAttrib3hNV },
14566   { "glVertexAttrib3hvNV", "GL_NV_half_float", wine_glVertexAttrib3hvNV },
14567   { "glVertexAttrib3s", "GL_VERSION_2_0", wine_glVertexAttrib3s },
14568   { "glVertexAttrib3sARB", "GL_ARB_vertex_program", wine_glVertexAttrib3sARB },
14569   { "glVertexAttrib3sNV", "GL_NV_vertex_program", wine_glVertexAttrib3sNV },
14570   { "glVertexAttrib3sv", "GL_VERSION_2_0", wine_glVertexAttrib3sv },
14571   { "glVertexAttrib3svARB", "GL_ARB_vertex_program", wine_glVertexAttrib3svARB },
14572   { "glVertexAttrib3svNV", "GL_NV_vertex_program", wine_glVertexAttrib3svNV },
14573   { "glVertexAttrib4Nbv", "GL_VERSION_2_0", wine_glVertexAttrib4Nbv },
14574   { "glVertexAttrib4NbvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NbvARB },
14575   { "glVertexAttrib4Niv", "GL_VERSION_2_0", wine_glVertexAttrib4Niv },
14576   { "glVertexAttrib4NivARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NivARB },
14577   { "glVertexAttrib4Nsv", "GL_VERSION_2_0", wine_glVertexAttrib4Nsv },
14578   { "glVertexAttrib4NsvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NsvARB },
14579   { "glVertexAttrib4Nub", "GL_VERSION_2_0", wine_glVertexAttrib4Nub },
14580   { "glVertexAttrib4NubARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NubARB },
14581   { "glVertexAttrib4Nubv", "GL_VERSION_2_0", wine_glVertexAttrib4Nubv },
14582   { "glVertexAttrib4NubvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NubvARB },
14583   { "glVertexAttrib4Nuiv", "GL_VERSION_2_0", wine_glVertexAttrib4Nuiv },
14584   { "glVertexAttrib4NuivARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NuivARB },
14585   { "glVertexAttrib4Nusv", "GL_VERSION_2_0", wine_glVertexAttrib4Nusv },
14586   { "glVertexAttrib4NusvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4NusvARB },
14587   { "glVertexAttrib4bv", "GL_VERSION_2_0", wine_glVertexAttrib4bv },
14588   { "glVertexAttrib4bvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4bvARB },
14589   { "glVertexAttrib4d", "GL_VERSION_2_0", wine_glVertexAttrib4d },
14590   { "glVertexAttrib4dARB", "GL_ARB_vertex_program", wine_glVertexAttrib4dARB },
14591   { "glVertexAttrib4dNV", "GL_NV_vertex_program", wine_glVertexAttrib4dNV },
14592   { "glVertexAttrib4dv", "GL_VERSION_2_0", wine_glVertexAttrib4dv },
14593   { "glVertexAttrib4dvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4dvARB },
14594   { "glVertexAttrib4dvNV", "GL_NV_vertex_program", wine_glVertexAttrib4dvNV },
14595   { "glVertexAttrib4f", "GL_VERSION_2_0", wine_glVertexAttrib4f },
14596   { "glVertexAttrib4fARB", "GL_ARB_vertex_program", wine_glVertexAttrib4fARB },
14597   { "glVertexAttrib4fNV", "GL_NV_vertex_program", wine_glVertexAttrib4fNV },
14598   { "glVertexAttrib4fv", "GL_VERSION_2_0", wine_glVertexAttrib4fv },
14599   { "glVertexAttrib4fvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4fvARB },
14600   { "glVertexAttrib4fvNV", "GL_NV_vertex_program", wine_glVertexAttrib4fvNV },
14601   { "glVertexAttrib4hNV", "GL_NV_half_float", wine_glVertexAttrib4hNV },
14602   { "glVertexAttrib4hvNV", "GL_NV_half_float", wine_glVertexAttrib4hvNV },
14603   { "glVertexAttrib4iv", "GL_VERSION_2_0", wine_glVertexAttrib4iv },
14604   { "glVertexAttrib4ivARB", "GL_ARB_vertex_program", wine_glVertexAttrib4ivARB },
14605   { "glVertexAttrib4s", "GL_VERSION_2_0", wine_glVertexAttrib4s },
14606   { "glVertexAttrib4sARB", "GL_ARB_vertex_program", wine_glVertexAttrib4sARB },
14607   { "glVertexAttrib4sNV", "GL_NV_vertex_program", wine_glVertexAttrib4sNV },
14608   { "glVertexAttrib4sv", "GL_VERSION_2_0", wine_glVertexAttrib4sv },
14609   { "glVertexAttrib4svARB", "GL_ARB_vertex_program", wine_glVertexAttrib4svARB },
14610   { "glVertexAttrib4svNV", "GL_NV_vertex_program", wine_glVertexAttrib4svNV },
14611   { "glVertexAttrib4ubNV", "GL_NV_vertex_program", wine_glVertexAttrib4ubNV },
14612   { "glVertexAttrib4ubv", "GL_VERSION_2_0", wine_glVertexAttrib4ubv },
14613   { "glVertexAttrib4ubvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4ubvARB },
14614   { "glVertexAttrib4ubvNV", "GL_NV_vertex_program", wine_glVertexAttrib4ubvNV },
14615   { "glVertexAttrib4uiv", "GL_VERSION_2_0", wine_glVertexAttrib4uiv },
14616   { "glVertexAttrib4uivARB", "GL_ARB_vertex_program", wine_glVertexAttrib4uivARB },
14617   { "glVertexAttrib4usv", "GL_VERSION_2_0", wine_glVertexAttrib4usv },
14618   { "glVertexAttrib4usvARB", "GL_ARB_vertex_program", wine_glVertexAttrib4usvARB },
14619   { "glVertexAttribArrayObjectATI", "GL_ATI_vertex_attrib_array_object", wine_glVertexAttribArrayObjectATI },
14620   { "glVertexAttribBinding", "GL_ARB_vertex_attrib_binding", wine_glVertexAttribBinding },
14621   { "glVertexAttribDivisor", "GL_VERSION_3_3", wine_glVertexAttribDivisor },
14622   { "glVertexAttribDivisorARB", "GL_ARB_instanced_arrays", wine_glVertexAttribDivisorARB },
14623   { "glVertexAttribFormat", "GL_ARB_vertex_attrib_binding", wine_glVertexAttribFormat },
14624   { "glVertexAttribFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glVertexAttribFormatNV },
14625   { "glVertexAttribI1i", "GL_VERSION_3_0", wine_glVertexAttribI1i },
14626   { "glVertexAttribI1iEXT", "GL_NV_vertex_program4", wine_glVertexAttribI1iEXT },
14627   { "glVertexAttribI1iv", "GL_VERSION_3_0", wine_glVertexAttribI1iv },
14628   { "glVertexAttribI1ivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI1ivEXT },
14629   { "glVertexAttribI1ui", "GL_VERSION_3_0", wine_glVertexAttribI1ui },
14630   { "glVertexAttribI1uiEXT", "GL_NV_vertex_program4", wine_glVertexAttribI1uiEXT },
14631   { "glVertexAttribI1uiv", "GL_VERSION_3_0", wine_glVertexAttribI1uiv },
14632   { "glVertexAttribI1uivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI1uivEXT },
14633   { "glVertexAttribI2i", "GL_VERSION_3_0", wine_glVertexAttribI2i },
14634   { "glVertexAttribI2iEXT", "GL_NV_vertex_program4", wine_glVertexAttribI2iEXT },
14635   { "glVertexAttribI2iv", "GL_VERSION_3_0", wine_glVertexAttribI2iv },
14636   { "glVertexAttribI2ivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI2ivEXT },
14637   { "glVertexAttribI2ui", "GL_VERSION_3_0", wine_glVertexAttribI2ui },
14638   { "glVertexAttribI2uiEXT", "GL_NV_vertex_program4", wine_glVertexAttribI2uiEXT },
14639   { "glVertexAttribI2uiv", "GL_VERSION_3_0", wine_glVertexAttribI2uiv },
14640   { "glVertexAttribI2uivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI2uivEXT },
14641   { "glVertexAttribI3i", "GL_VERSION_3_0", wine_glVertexAttribI3i },
14642   { "glVertexAttribI3iEXT", "GL_NV_vertex_program4", wine_glVertexAttribI3iEXT },
14643   { "glVertexAttribI3iv", "GL_VERSION_3_0", wine_glVertexAttribI3iv },
14644   { "glVertexAttribI3ivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI3ivEXT },
14645   { "glVertexAttribI3ui", "GL_VERSION_3_0", wine_glVertexAttribI3ui },
14646   { "glVertexAttribI3uiEXT", "GL_NV_vertex_program4", wine_glVertexAttribI3uiEXT },
14647   { "glVertexAttribI3uiv", "GL_VERSION_3_0", wine_glVertexAttribI3uiv },
14648   { "glVertexAttribI3uivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI3uivEXT },
14649   { "glVertexAttribI4bv", "GL_VERSION_3_0", wine_glVertexAttribI4bv },
14650   { "glVertexAttribI4bvEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4bvEXT },
14651   { "glVertexAttribI4i", "GL_VERSION_3_0", wine_glVertexAttribI4i },
14652   { "glVertexAttribI4iEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4iEXT },
14653   { "glVertexAttribI4iv", "GL_VERSION_3_0", wine_glVertexAttribI4iv },
14654   { "glVertexAttribI4ivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4ivEXT },
14655   { "glVertexAttribI4sv", "GL_VERSION_3_0", wine_glVertexAttribI4sv },
14656   { "glVertexAttribI4svEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4svEXT },
14657   { "glVertexAttribI4ubv", "GL_VERSION_3_0", wine_glVertexAttribI4ubv },
14658   { "glVertexAttribI4ubvEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4ubvEXT },
14659   { "glVertexAttribI4ui", "GL_VERSION_3_0", wine_glVertexAttribI4ui },
14660   { "glVertexAttribI4uiEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4uiEXT },
14661   { "glVertexAttribI4uiv", "GL_VERSION_3_0", wine_glVertexAttribI4uiv },
14662   { "glVertexAttribI4uivEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4uivEXT },
14663   { "glVertexAttribI4usv", "GL_VERSION_3_0", wine_glVertexAttribI4usv },
14664   { "glVertexAttribI4usvEXT", "GL_NV_vertex_program4", wine_glVertexAttribI4usvEXT },
14665   { "glVertexAttribIFormat", "GL_ARB_vertex_attrib_binding", wine_glVertexAttribIFormat },
14666   { "glVertexAttribIFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glVertexAttribIFormatNV },
14667   { "glVertexAttribIPointer", "GL_VERSION_3_0", wine_glVertexAttribIPointer },
14668   { "glVertexAttribIPointerEXT", "GL_NV_vertex_program4", wine_glVertexAttribIPointerEXT },
14669   { "glVertexAttribL1d", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL1d },
14670   { "glVertexAttribL1dEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL1dEXT },
14671   { "glVertexAttribL1dv", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL1dv },
14672   { "glVertexAttribL1dvEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL1dvEXT },
14673   { "glVertexAttribL1i64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL1i64NV },
14674   { "glVertexAttribL1i64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL1i64vNV },
14675   { "glVertexAttribL1ui64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL1ui64NV },
14676   { "glVertexAttribL1ui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL1ui64vNV },
14677   { "glVertexAttribL2d", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL2d },
14678   { "glVertexAttribL2dEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL2dEXT },
14679   { "glVertexAttribL2dv", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL2dv },
14680   { "glVertexAttribL2dvEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL2dvEXT },
14681   { "glVertexAttribL2i64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL2i64NV },
14682   { "glVertexAttribL2i64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL2i64vNV },
14683   { "glVertexAttribL2ui64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL2ui64NV },
14684   { "glVertexAttribL2ui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL2ui64vNV },
14685   { "glVertexAttribL3d", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL3d },
14686   { "glVertexAttribL3dEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL3dEXT },
14687   { "glVertexAttribL3dv", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL3dv },
14688   { "glVertexAttribL3dvEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL3dvEXT },
14689   { "glVertexAttribL3i64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL3i64NV },
14690   { "glVertexAttribL3i64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL3i64vNV },
14691   { "glVertexAttribL3ui64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL3ui64NV },
14692   { "glVertexAttribL3ui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL3ui64vNV },
14693   { "glVertexAttribL4d", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL4d },
14694   { "glVertexAttribL4dEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL4dEXT },
14695   { "glVertexAttribL4dv", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribL4dv },
14696   { "glVertexAttribL4dvEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribL4dvEXT },
14697   { "glVertexAttribL4i64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL4i64NV },
14698   { "glVertexAttribL4i64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL4i64vNV },
14699   { "glVertexAttribL4ui64NV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL4ui64NV },
14700   { "glVertexAttribL4ui64vNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribL4ui64vNV },
14701   { "glVertexAttribLFormat", "GL_ARB_vertex_attrib_binding", wine_glVertexAttribLFormat },
14702   { "glVertexAttribLFormatNV", "GL_NV_vertex_attrib_integer_64bit", wine_glVertexAttribLFormatNV },
14703   { "glVertexAttribLPointer", "GL_ARB_vertex_attrib_64bit", wine_glVertexAttribLPointer },
14704   { "glVertexAttribLPointerEXT", "GL_EXT_vertex_attrib_64bit", wine_glVertexAttribLPointerEXT },
14705   { "glVertexAttribP1ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP1ui },
14706   { "glVertexAttribP1uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP1uiv },
14707   { "glVertexAttribP2ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP2ui },
14708   { "glVertexAttribP2uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP2uiv },
14709   { "glVertexAttribP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP3ui },
14710   { "glVertexAttribP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP3uiv },
14711   { "glVertexAttribP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP4ui },
14712   { "glVertexAttribP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexAttribP4uiv },
14713   { "glVertexAttribPointer", "GL_VERSION_2_0", wine_glVertexAttribPointer },
14714   { "glVertexAttribPointerARB", "GL_ARB_vertex_program", wine_glVertexAttribPointerARB },
14715   { "glVertexAttribPointerNV", "GL_NV_vertex_program", wine_glVertexAttribPointerNV },
14716   { "glVertexAttribs1dvNV", "GL_NV_vertex_program", wine_glVertexAttribs1dvNV },
14717   { "glVertexAttribs1fvNV", "GL_NV_vertex_program", wine_glVertexAttribs1fvNV },
14718   { "glVertexAttribs1hvNV", "GL_NV_half_float", wine_glVertexAttribs1hvNV },
14719   { "glVertexAttribs1svNV", "GL_NV_vertex_program", wine_glVertexAttribs1svNV },
14720   { "glVertexAttribs2dvNV", "GL_NV_vertex_program", wine_glVertexAttribs2dvNV },
14721   { "glVertexAttribs2fvNV", "GL_NV_vertex_program", wine_glVertexAttribs2fvNV },
14722   { "glVertexAttribs2hvNV", "GL_NV_half_float", wine_glVertexAttribs2hvNV },
14723   { "glVertexAttribs2svNV", "GL_NV_vertex_program", wine_glVertexAttribs2svNV },
14724   { "glVertexAttribs3dvNV", "GL_NV_vertex_program", wine_glVertexAttribs3dvNV },
14725   { "glVertexAttribs3fvNV", "GL_NV_vertex_program", wine_glVertexAttribs3fvNV },
14726   { "glVertexAttribs3hvNV", "GL_NV_half_float", wine_glVertexAttribs3hvNV },
14727   { "glVertexAttribs3svNV", "GL_NV_vertex_program", wine_glVertexAttribs3svNV },
14728   { "glVertexAttribs4dvNV", "GL_NV_vertex_program", wine_glVertexAttribs4dvNV },
14729   { "glVertexAttribs4fvNV", "GL_NV_vertex_program", wine_glVertexAttribs4fvNV },
14730   { "glVertexAttribs4hvNV", "GL_NV_half_float", wine_glVertexAttribs4hvNV },
14731   { "glVertexAttribs4svNV", "GL_NV_vertex_program", wine_glVertexAttribs4svNV },
14732   { "glVertexAttribs4ubvNV", "GL_NV_vertex_program", wine_glVertexAttribs4ubvNV },
14733   { "glVertexBindingDivisor", "GL_ARB_vertex_attrib_binding", wine_glVertexBindingDivisor },
14734   { "glVertexBlendARB", "GL_ARB_vertex_blend", wine_glVertexBlendARB },
14735   { "glVertexBlendEnvfATI", "GL_ATI_vertex_streams", wine_glVertexBlendEnvfATI },
14736   { "glVertexBlendEnviATI", "GL_ATI_vertex_streams", wine_glVertexBlendEnviATI },
14737   { "glVertexFormatNV", "GL_NV_vertex_buffer_unified_memory", wine_glVertexFormatNV },
14738   { "glVertexP2ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP2ui },
14739   { "glVertexP2uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP2uiv },
14740   { "glVertexP3ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP3ui },
14741   { "glVertexP3uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP3uiv },
14742   { "glVertexP4ui", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP4ui },
14743   { "glVertexP4uiv", "GL_ARB_vertex_type_2_10_10_10_rev", wine_glVertexP4uiv },
14744   { "glVertexPointerEXT", "GL_EXT_vertex_array", wine_glVertexPointerEXT },
14745   { "glVertexPointerListIBM", "GL_IBM_vertex_array_lists", wine_glVertexPointerListIBM },
14746   { "glVertexPointervINTEL", "GL_INTEL_parallel_arrays", wine_glVertexPointervINTEL },
14747   { "glVertexStream1dATI", "GL_ATI_vertex_streams", wine_glVertexStream1dATI },
14748   { "glVertexStream1dvATI", "GL_ATI_vertex_streams", wine_glVertexStream1dvATI },
14749   { "glVertexStream1fATI", "GL_ATI_vertex_streams", wine_glVertexStream1fATI },
14750   { "glVertexStream1fvATI", "GL_ATI_vertex_streams", wine_glVertexStream1fvATI },
14751   { "glVertexStream1iATI", "GL_ATI_vertex_streams", wine_glVertexStream1iATI },
14752   { "glVertexStream1ivATI", "GL_ATI_vertex_streams", wine_glVertexStream1ivATI },
14753   { "glVertexStream1sATI", "GL_ATI_vertex_streams", wine_glVertexStream1sATI },
14754   { "glVertexStream1svATI", "GL_ATI_vertex_streams", wine_glVertexStream1svATI },
14755   { "glVertexStream2dATI", "GL_ATI_vertex_streams", wine_glVertexStream2dATI },
14756   { "glVertexStream2dvATI", "GL_ATI_vertex_streams", wine_glVertexStream2dvATI },
14757   { "glVertexStream2fATI", "GL_ATI_vertex_streams", wine_glVertexStream2fATI },
14758   { "glVertexStream2fvATI", "GL_ATI_vertex_streams", wine_glVertexStream2fvATI },
14759   { "glVertexStream2iATI", "GL_ATI_vertex_streams", wine_glVertexStream2iATI },
14760   { "glVertexStream2ivATI", "GL_ATI_vertex_streams", wine_glVertexStream2ivATI },
14761   { "glVertexStream2sATI", "GL_ATI_vertex_streams", wine_glVertexStream2sATI },
14762   { "glVertexStream2svATI", "GL_ATI_vertex_streams", wine_glVertexStream2svATI },
14763   { "glVertexStream3dATI", "GL_ATI_vertex_streams", wine_glVertexStream3dATI },
14764   { "glVertexStream3dvATI", "GL_ATI_vertex_streams", wine_glVertexStream3dvATI },
14765   { "glVertexStream3fATI", "GL_ATI_vertex_streams", wine_glVertexStream3fATI },
14766   { "glVertexStream3fvATI", "GL_ATI_vertex_streams", wine_glVertexStream3fvATI },
14767   { "glVertexStream3iATI", "GL_ATI_vertex_streams", wine_glVertexStream3iATI },
14768   { "glVertexStream3ivATI", "GL_ATI_vertex_streams", wine_glVertexStream3ivATI },
14769   { "glVertexStream3sATI", "GL_ATI_vertex_streams", wine_glVertexStream3sATI },
14770   { "glVertexStream3svATI", "GL_ATI_vertex_streams", wine_glVertexStream3svATI },
14771   { "glVertexStream4dATI", "GL_ATI_vertex_streams", wine_glVertexStream4dATI },
14772   { "glVertexStream4dvATI", "GL_ATI_vertex_streams", wine_glVertexStream4dvATI },
14773   { "glVertexStream4fATI", "GL_ATI_vertex_streams", wine_glVertexStream4fATI },
14774   { "glVertexStream4fvATI", "GL_ATI_vertex_streams", wine_glVertexStream4fvATI },
14775   { "glVertexStream4iATI", "GL_ATI_vertex_streams", wine_glVertexStream4iATI },
14776   { "glVertexStream4ivATI", "GL_ATI_vertex_streams", wine_glVertexStream4ivATI },
14777   { "glVertexStream4sATI", "GL_ATI_vertex_streams", wine_glVertexStream4sATI },
14778   { "glVertexStream4svATI", "GL_ATI_vertex_streams", wine_glVertexStream4svATI },
14779   { "glVertexWeightPointerEXT", "GL_EXT_vertex_weighting", wine_glVertexWeightPointerEXT },
14780   { "glVertexWeightfEXT", "GL_EXT_vertex_weighting", wine_glVertexWeightfEXT },
14781   { "glVertexWeightfvEXT", "GL_EXT_vertex_weighting", wine_glVertexWeightfvEXT },
14782   { "glVertexWeighthNV", "GL_NV_half_float", wine_glVertexWeighthNV },
14783   { "glVertexWeighthvNV", "GL_NV_half_float", wine_glVertexWeighthvNV },
14784   { "glVideoCaptureNV", "GL_NV_video_capture", wine_glVideoCaptureNV },
14785   { "glVideoCaptureStreamParameterdvNV", "GL_NV_video_capture", wine_glVideoCaptureStreamParameterdvNV },
14786   { "glVideoCaptureStreamParameterfvNV", "GL_NV_video_capture", wine_glVideoCaptureStreamParameterfvNV },
14787   { "glVideoCaptureStreamParameterivNV", "GL_NV_video_capture", wine_glVideoCaptureStreamParameterivNV },
14788   { "glViewportArrayv", "GL_ARB_viewport_array", wine_glViewportArrayv },
14789   { "glViewportIndexedf", "GL_ARB_viewport_array", wine_glViewportIndexedf },
14790   { "glViewportIndexedfv", "GL_ARB_viewport_array", wine_glViewportIndexedfv },
14791   { "glWaitSync", "GL_ARB_sync", wine_glWaitSync },
14792   { "glWeightPathsNV", "GL_NV_path_rendering", wine_glWeightPathsNV },
14793   { "glWeightPointerARB", "GL_ARB_vertex_blend", wine_glWeightPointerARB },
14794   { "glWeightbvARB", "GL_ARB_vertex_blend", wine_glWeightbvARB },
14795   { "glWeightdvARB", "GL_ARB_vertex_blend", wine_glWeightdvARB },
14796   { "glWeightfvARB", "GL_ARB_vertex_blend", wine_glWeightfvARB },
14797   { "glWeightivARB", "GL_ARB_vertex_blend", wine_glWeightivARB },
14798   { "glWeightsvARB", "GL_ARB_vertex_blend", wine_glWeightsvARB },
14799   { "glWeightubvARB", "GL_ARB_vertex_blend", wine_glWeightubvARB },
14800   { "glWeightuivARB", "GL_ARB_vertex_blend", wine_glWeightuivARB },
14801   { "glWeightusvARB", "GL_ARB_vertex_blend", wine_glWeightusvARB },
14802   { "glWindowPos2d", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2d },
14803   { "glWindowPos2dARB", "GL_ARB_window_pos", wine_glWindowPos2dARB },
14804   { "glWindowPos2dMESA", "GL_MESA_window_pos", wine_glWindowPos2dMESA },
14805   { "glWindowPos2dv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2dv },
14806   { "glWindowPos2dvARB", "GL_ARB_window_pos", wine_glWindowPos2dvARB },
14807   { "glWindowPos2dvMESA", "GL_MESA_window_pos", wine_glWindowPos2dvMESA },
14808   { "glWindowPos2f", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2f },
14809   { "glWindowPos2fARB", "GL_ARB_window_pos", wine_glWindowPos2fARB },
14810   { "glWindowPos2fMESA", "GL_MESA_window_pos", wine_glWindowPos2fMESA },
14811   { "glWindowPos2fv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2fv },
14812   { "glWindowPos2fvARB", "GL_ARB_window_pos", wine_glWindowPos2fvARB },
14813   { "glWindowPos2fvMESA", "GL_MESA_window_pos", wine_glWindowPos2fvMESA },
14814   { "glWindowPos2i", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2i },
14815   { "glWindowPos2iARB", "GL_ARB_window_pos", wine_glWindowPos2iARB },
14816   { "glWindowPos2iMESA", "GL_MESA_window_pos", wine_glWindowPos2iMESA },
14817   { "glWindowPos2iv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2iv },
14818   { "glWindowPos2ivARB", "GL_ARB_window_pos", wine_glWindowPos2ivARB },
14819   { "glWindowPos2ivMESA", "GL_MESA_window_pos", wine_glWindowPos2ivMESA },
14820   { "glWindowPos2s", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2s },
14821   { "glWindowPos2sARB", "GL_ARB_window_pos", wine_glWindowPos2sARB },
14822   { "glWindowPos2sMESA", "GL_MESA_window_pos", wine_glWindowPos2sMESA },
14823   { "glWindowPos2sv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos2sv },
14824   { "glWindowPos2svARB", "GL_ARB_window_pos", wine_glWindowPos2svARB },
14825   { "glWindowPos2svMESA", "GL_MESA_window_pos", wine_glWindowPos2svMESA },
14826   { "glWindowPos3d", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3d },
14827   { "glWindowPos3dARB", "GL_ARB_window_pos", wine_glWindowPos3dARB },
14828   { "glWindowPos3dMESA", "GL_MESA_window_pos", wine_glWindowPos3dMESA },
14829   { "glWindowPos3dv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3dv },
14830   { "glWindowPos3dvARB", "GL_ARB_window_pos", wine_glWindowPos3dvARB },
14831   { "glWindowPos3dvMESA", "GL_MESA_window_pos", wine_glWindowPos3dvMESA },
14832   { "glWindowPos3f", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3f },
14833   { "glWindowPos3fARB", "GL_ARB_window_pos", wine_glWindowPos3fARB },
14834   { "glWindowPos3fMESA", "GL_MESA_window_pos", wine_glWindowPos3fMESA },
14835   { "glWindowPos3fv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3fv },
14836   { "glWindowPos3fvARB", "GL_ARB_window_pos", wine_glWindowPos3fvARB },
14837   { "glWindowPos3fvMESA", "GL_MESA_window_pos", wine_glWindowPos3fvMESA },
14838   { "glWindowPos3i", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3i },
14839   { "glWindowPos3iARB", "GL_ARB_window_pos", wine_glWindowPos3iARB },
14840   { "glWindowPos3iMESA", "GL_MESA_window_pos", wine_glWindowPos3iMESA },
14841   { "glWindowPos3iv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3iv },
14842   { "glWindowPos3ivARB", "GL_ARB_window_pos", wine_glWindowPos3ivARB },
14843   { "glWindowPos3ivMESA", "GL_MESA_window_pos", wine_glWindowPos3ivMESA },
14844   { "glWindowPos3s", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3s },
14845   { "glWindowPos3sARB", "GL_ARB_window_pos", wine_glWindowPos3sARB },
14846   { "glWindowPos3sMESA", "GL_MESA_window_pos", wine_glWindowPos3sMESA },
14847   { "glWindowPos3sv", "GL_VERSION_1_4_DEPRECATED", wine_glWindowPos3sv },
14848   { "glWindowPos3svARB", "GL_ARB_window_pos", wine_glWindowPos3svARB },
14849   { "glWindowPos3svMESA", "GL_MESA_window_pos", wine_glWindowPos3svMESA },
14850   { "glWindowPos4dMESA", "GL_MESA_window_pos", wine_glWindowPos4dMESA },
14851   { "glWindowPos4dvMESA", "GL_MESA_window_pos", wine_glWindowPos4dvMESA },
14852   { "glWindowPos4fMESA", "GL_MESA_window_pos", wine_glWindowPos4fMESA },
14853   { "glWindowPos4fvMESA", "GL_MESA_window_pos", wine_glWindowPos4fvMESA },
14854   { "glWindowPos4iMESA", "GL_MESA_window_pos", wine_glWindowPos4iMESA },
14855   { "glWindowPos4ivMESA", "GL_MESA_window_pos", wine_glWindowPos4ivMESA },
14856   { "glWindowPos4sMESA", "GL_MESA_window_pos", wine_glWindowPos4sMESA },
14857   { "glWindowPos4svMESA", "GL_MESA_window_pos", wine_glWindowPos4svMESA },
14858   { "glWriteMaskEXT", "GL_EXT_vertex_shader", wine_glWriteMaskEXT },
14859   { "wglAllocateMemoryNV", "WGL_NV_vertex_array_range", wglAllocateMemoryNV },
14860   { "wglBindTexImageARB", "WGL_ARB_render_texture", wglBindTexImageARB },
14861   { "wglChoosePixelFormatARB", "WGL_ARB_pixel_format", wglChoosePixelFormatARB },
14862   { "wglCreateContextAttribsARB", "WGL_ARB_create_context", wglCreateContextAttribsARB },
14863   { "wglCreatePbufferARB", "WGL_ARB_pbuffer", wglCreatePbufferARB },
14864   { "wglDestroyPbufferARB", "WGL_ARB_pbuffer", wglDestroyPbufferARB },
14865   { "wglFreeMemoryNV", "WGL_NV_vertex_array_range", wglFreeMemoryNV },
14866   { "wglGetCurrentReadDCARB", "WGL_ARB_make_current_read", wglGetCurrentReadDCARB },
14867   { "wglGetExtensionsStringARB", "WGL_ARB_extensions_string", wglGetExtensionsStringARB },
14868   { "wglGetExtensionsStringEXT", "WGL_EXT_extensions_string", wglGetExtensionsStringEXT },
14869   { "wglGetPbufferDCARB", "WGL_ARB_pbuffer", wglGetPbufferDCARB },
14870   { "wglGetPixelFormatAttribfvARB", "WGL_ARB_pixel_format", wglGetPixelFormatAttribfvARB },
14871   { "wglGetPixelFormatAttribivARB", "WGL_ARB_pixel_format", wglGetPixelFormatAttribivARB },
14872   { "wglGetSwapIntervalEXT", "WGL_EXT_swap_control", wglGetSwapIntervalEXT },
14873   { "wglMakeContextCurrentARB", "WGL_ARB_make_current_read", wglMakeContextCurrentARB },
14874   { "wglQueryPbufferARB", "WGL_ARB_pbuffer", wglQueryPbufferARB },
14875   { "wglReleasePbufferDCARB", "WGL_ARB_pbuffer", wglReleasePbufferDCARB },
14876   { "wglReleaseTexImageARB", "WGL_ARB_render_texture", wglReleaseTexImageARB },
14877   { "wglSetPbufferAttribARB", "WGL_ARB_render_texture", wglSetPbufferAttribARB },
14878   { "wglSetPixelFormatWINE", "WGL_WINE_pixel_format_passthrough", wglSetPixelFormatWINE },
14879   { "wglSwapIntervalEXT", "WGL_EXT_swap_control", wglSwapIntervalEXT }
14880 };