[PATCH 6/7] opengl32: Update to OpenGL 4.6.

Matteo Bruni mbruni at codeweavers.com
Fri Sep 15 08:12:27 CDT 2017


Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
---
This is the output of make_opengl on XML files as of
93e0595941ea275b95ba115e1f400283c652004d with no manual modifications
on top. You might want to run make_opengl yourself anyway
though (hopefully nothing critical changed in the meantime).

AFAICS the warnings currently emitted by make_opengl are due to
duplicated enum values in the source XML (i.e. Khronos's fault).

 dlls/opengl32/opengl_ext.c  |  539 +++++++++++++++++++-
 dlls/opengl32/opengl_norm.c | 1156 ++++++-------------------------------------
 include/wine/wgl.h          |  147 ++++++
 include/wine/wgl_driver.h   |   81 ++-
 4 files changed, 909 insertions(+), 1014 deletions(-)

diff --git a/dlls/opengl32/opengl_ext.c b/dlls/opengl32/opengl_ext.c
index 2a3b435517..a8d267793e 100644
--- a/dlls/opengl32/opengl_ext.c
+++ b/dlls/opengl32/opengl_ext.c
@@ -14,7 +14,7 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(opengl);
 
-const int extension_registry_size = 2580;
+const int extension_registry_size = 2655;
 
 static void WINAPI glAccumxOES( GLenum op, GLfixed value ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
@@ -22,6 +22,12 @@ static void WINAPI glAccumxOES( GLenum op, GLfixed value ) {
   funcs->ext.p_glAccumxOES( op, value );
 }
 
+static GLboolean WINAPI glAcquireKeyedMutexWin32EXT( GLuint memory, GLuint64 key, GLuint timeout ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %s, %d)\n", memory, wine_dbgstr_longlong(key), timeout );
+  return funcs->ext.p_glAcquireKeyedMutexWin32EXT( memory, key, timeout );
+}
+
 static void WINAPI glActiveProgramEXT( GLuint program ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", program );
@@ -82,6 +88,12 @@ static void WINAPI glAlphaFuncxOES( GLenum func, GLfixed ref ) {
   funcs->ext.p_glAlphaFuncxOES( func, ref );
 }
 
+static void WINAPI glAlphaToCoverageDitherControlNV( GLenum mode ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d)\n", mode );
+  funcs->ext.p_glAlphaToCoverageDitherControlNV( mode );
+}
+
 static void WINAPI glApplyFramebufferAttachmentCMAAINTEL( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
@@ -796,6 +808,18 @@ static void WINAPI glBufferStorage( GLenum target, GLsizeiptr size, const void*
   funcs->ext.p_glBufferStorage( target, size, data, flags );
 }
 
+static void WINAPI glBufferStorageExternalEXT( GLenum target, GLintptr offset, GLsizeiptr size, void * clientBuffer, GLbitfield flags ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %ld, %ld, %p, %d)\n", target, offset, size, clientBuffer, flags );
+  funcs->ext.p_glBufferStorageExternalEXT( target, offset, size, clientBuffer, flags );
+}
+
+static void WINAPI glBufferStorageMemEXT( GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %ld, %d, %s)\n", target, size, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glBufferStorageMemEXT( target, size, memory, offset );
+}
+
 static void WINAPI glBufferSubData( GLenum target, GLintptr offset, GLsizeiptr size, const void* data ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %ld, %ld, %p)\n", target, offset, size, data );
@@ -1510,6 +1534,12 @@ static void WINAPI glConservativeRasterParameterfNV( GLenum pname, GLfloat value
   funcs->ext.p_glConservativeRasterParameterfNV( pname, value );
 }
 
+static void WINAPI glConservativeRasterParameteriNV( GLenum pname, GLint param ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d)\n", pname, param );
+  funcs->ext.p_glConservativeRasterParameteriNV( pname, param );
+}
+
 static void WINAPI glConvolutionFilter1D( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* image ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %p)\n", target, internalformat, width, format, type, image );
@@ -1840,6 +1870,12 @@ static void WINAPI glCreateFramebuffers( GLsizei n, GLuint* framebuffers ) {
   funcs->ext.p_glCreateFramebuffers( n, framebuffers );
 }
 
+static void WINAPI glCreateMemoryObjectsEXT( GLsizei n, GLuint* memoryObjects ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p)\n", n, memoryObjects );
+  funcs->ext.p_glCreateMemoryObjectsEXT( n, memoryObjects );
+}
+
 static void WINAPI glCreatePerfQueryINTEL( GLuint queryId, GLuint* queryHandle ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", queryId, queryHandle );
@@ -2086,6 +2122,12 @@ static void WINAPI glDeleteFramebuffersEXT( GLsizei n, const GLuint* framebuffer
   funcs->ext.p_glDeleteFramebuffersEXT( n, framebuffers );
 }
 
+static void WINAPI glDeleteMemoryObjectsEXT( GLsizei n, const GLuint* memoryObjects ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p)\n", n, memoryObjects );
+  funcs->ext.p_glDeleteMemoryObjectsEXT( n, memoryObjects );
+}
+
 static void WINAPI glDeleteNamedStringARB( GLint namelen, const GLchar* name ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", namelen, name );
@@ -2170,6 +2212,12 @@ static void WINAPI glDeleteQueriesARB( GLsizei n, const GLuint* ids ) {
   funcs->ext.p_glDeleteQueriesARB( n, ids );
 }
 
+static void WINAPI glDeleteQueryResourceTagNV( GLsizei n, const GLint* tagIds ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p)\n", n, tagIds );
+  funcs->ext.p_glDeleteQueryResourceTagNV( n, tagIds );
+}
+
 static void WINAPI glDeleteRenderbuffers( GLsizei n, const GLuint* renderbuffers ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", n, renderbuffers );
@@ -2188,6 +2236,12 @@ static void WINAPI glDeleteSamplers( GLsizei count, const GLuint* samplers ) {
   funcs->ext.p_glDeleteSamplers( count, samplers );
 }
 
+static void WINAPI glDeleteSemaphoresEXT( GLsizei n, const GLuint* semaphores ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p)\n", n, semaphores );
+  funcs->ext.p_glDeleteSemaphoresEXT( n, semaphores );
+}
+
 static void WINAPI glDeleteShader( GLuint shader ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", shader );
@@ -2608,6 +2662,12 @@ static void WINAPI glDrawTransformFeedbackStreamInstanced( GLenum mode, GLuint i
   funcs->ext.p_glDrawTransformFeedbackStreamInstanced( mode, id, stream, instancecount );
 }
 
+static void WINAPI glDrawVkImageNV( GLuint64 vkImage, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1 ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%s, %d, %f, %f, %f, %f, %f, %f, %f, %f, %f)\n", wine_dbgstr_longlong(vkImage), sampler, x0, y0, x1, y1, z, s0, t0, s1, t1 );
+  funcs->ext.p_glDrawVkImageNV( vkImage, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1 );
+}
+
 static void WINAPI glEdgeFlagFormatNV( GLsizei stride ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", stride );
@@ -3190,6 +3250,12 @@ static void WINAPI glFramebufferSampleLocationsfvNV( GLenum target, GLuint start
   funcs->ext.p_glFramebufferSampleLocationsfvNV( target, start, count, v );
 }
 
+static void WINAPI glFramebufferSamplePositionsfvAMD( GLenum target, GLuint numsamples, GLuint pixelindex, const GLfloat* values ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %p)\n", target, numsamples, pixelindex, values );
+  funcs->ext.p_glFramebufferSamplePositionsfvAMD( target, numsamples, pixelindex, values );
+}
+
 static void WINAPI glFramebufferTexture( GLenum target, GLenum attachment, GLuint texture, GLint level ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", target, attachment, texture, level );
@@ -3400,6 +3466,12 @@ static void WINAPI glGenQueriesARB( GLsizei n, GLuint* ids ) {
   funcs->ext.p_glGenQueriesARB( n, ids );
 }
 
+static void WINAPI glGenQueryResourceTagNV( GLsizei n, GLint* tagIds ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p)\n", n, tagIds );
+  funcs->ext.p_glGenQueryResourceTagNV( n, tagIds );
+}
+
 static void WINAPI glGenRenderbuffers( GLsizei n, GLuint* renderbuffers ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", n, renderbuffers );
@@ -3418,6 +3490,12 @@ static void WINAPI glGenSamplers( GLsizei count, GLuint* samplers ) {
   funcs->ext.p_glGenSamplers( count, samplers );
 }
 
+static void WINAPI glGenSemaphoresEXT( GLsizei n, GLuint* semaphores ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p)\n", n, semaphores );
+  funcs->ext.p_glGenSemaphoresEXT( n, semaphores );
+}
+
 static GLuint WINAPI glGenSymbolsEXT( GLenum datatype, GLenum storagetype, GLenum range, GLuint components ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", datatype, storagetype, range, components );
@@ -4000,6 +4078,12 @@ static void WINAPI glGetFramebufferAttachmentParameterivEXT( GLenum target, GLen
   funcs->ext.p_glGetFramebufferAttachmentParameterivEXT( target, attachment, pname, params );
 }
 
+static void WINAPI glGetFramebufferParameterfvAMD( GLenum target, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %p)\n", target, pname, numsamples, pixelindex, size, values );
+  funcs->ext.p_glGetFramebufferParameterfvAMD( target, pname, numsamples, pixelindex, size, values );
+}
+
 static void WINAPI glGetFramebufferParameteriv( GLenum target, GLenum pname, GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
@@ -4258,6 +4342,12 @@ static void WINAPI glGetMaterialxOES( GLenum face, GLenum pname, GLfixed param )
   funcs->ext.p_glGetMaterialxOES( face, pname, param );
 }
 
+static void WINAPI glGetMemoryObjectParameterivEXT( GLuint memoryObject, GLenum pname, GLint* params ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p)\n", memoryObject, pname, params );
+  funcs->ext.p_glGetMemoryObjectParameterivEXT( memoryObject, pname, params );
+}
+
 static void WINAPI glGetMinmax( GLenum target, GLboolean reset, GLenum format, GLenum type, void* values ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %p)\n", target, reset, format, type, values );
@@ -4438,6 +4528,12 @@ static void WINAPI glGetNamedFramebufferAttachmentParameterivEXT( GLuint framebu
   funcs->ext.p_glGetNamedFramebufferAttachmentParameterivEXT( framebuffer, attachment, pname, params );
 }
 
+static void WINAPI glGetNamedFramebufferParameterfvAMD( GLuint framebuffer, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %p)\n", framebuffer, pname, numsamples, pixelindex, size, values );
+  funcs->ext.p_glGetNamedFramebufferParameterfvAMD( framebuffer, pname, numsamples, pixelindex, size, values );
+}
+
 static void WINAPI glGetNamedFramebufferParameteriv( GLuint framebuffer, GLenum pname, GLint* param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", framebuffer, pname, param );
@@ -5068,6 +5164,12 @@ static void WINAPI glGetSamplerParameteriv( GLuint sampler, GLenum pname, GLint*
   funcs->ext.p_glGetSamplerParameteriv( sampler, pname, params );
 }
 
+static void WINAPI glGetSemaphoreParameterui64vEXT( GLuint semaphore, GLenum pname, GLuint64* params ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p)\n", semaphore, pname, params );
+  funcs->ext.p_glGetSemaphoreParameterui64vEXT( semaphore, pname, params );
+}
+
 static void WINAPI glGetSeparableFilter( GLenum target, GLenum format, GLenum type, void* row, void* column, void* span ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %p, %p, %p)\n", target, format, type, row, column, span );
@@ -5478,6 +5580,18 @@ static void WINAPI glGetUniformuivEXT( GLuint program, GLint location, GLuint* p
   funcs->ext.p_glGetUniformuivEXT( program, location, params );
 }
 
+static void WINAPI glGetUnsignedBytei_vEXT( GLenum target, GLuint index, GLubyte* data ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p)\n", target, index, data );
+  funcs->ext.p_glGetUnsignedBytei_vEXT( target, index, data );
+}
+
+static void WINAPI glGetUnsignedBytevEXT( GLenum pname, GLubyte* data ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p)\n", pname, data );
+  funcs->ext.p_glGetUnsignedBytevEXT( pname, data );
+}
+
 static void WINAPI glGetVariantArrayObjectfvATI( GLuint id, GLenum pname, GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", id, pname, params );
@@ -5748,6 +5862,12 @@ static void WINAPI glGetVideouivNV( GLuint video_slot, GLenum pname, GLuint* par
   funcs->ext.p_glGetVideouivNV( video_slot, pname, params );
 }
 
+static void * WINAPI glGetVkProcAddrNV( const GLchar* name ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%p)\n", name );
+  return funcs->ext.p_glGetVkProcAddrNV( name );
+}
+
 static void WINAPI glGetnColorTable( GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %p)\n", target, format, type, bufSize, table );
@@ -6072,6 +6192,42 @@ static void WINAPI glImageTransformParameterivHP( GLenum target, GLenum pname, c
   funcs->ext.p_glImageTransformParameterivHP( target, pname, params );
 }
 
+static void WINAPI glImportMemoryFdEXT( GLuint memory, GLuint64 size, GLenum handleType, GLint fd ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %s, %d, %d)\n", memory, wine_dbgstr_longlong(size), handleType, fd );
+  funcs->ext.p_glImportMemoryFdEXT( memory, size, handleType, fd );
+}
+
+static void WINAPI glImportMemoryWin32HandleEXT( GLuint memory, GLuint64 size, GLenum handleType, void* handle ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %s, %d, %p)\n", memory, wine_dbgstr_longlong(size), handleType, handle );
+  funcs->ext.p_glImportMemoryWin32HandleEXT( memory, size, handleType, handle );
+}
+
+static void WINAPI glImportMemoryWin32NameEXT( GLuint memory, GLuint64 size, GLenum handleType, const void* name ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %s, %d, %p)\n", memory, wine_dbgstr_longlong(size), handleType, name );
+  funcs->ext.p_glImportMemoryWin32NameEXT( memory, size, handleType, name );
+}
+
+static void WINAPI glImportSemaphoreFdEXT( GLuint semaphore, GLenum handleType, GLint fd ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d)\n", semaphore, handleType, fd );
+  funcs->ext.p_glImportSemaphoreFdEXT( semaphore, handleType, fd );
+}
+
+static void WINAPI glImportSemaphoreWin32HandleEXT( GLuint semaphore, GLenum handleType, void* handle ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p)\n", semaphore, handleType, handle );
+  funcs->ext.p_glImportSemaphoreWin32HandleEXT( semaphore, handleType, handle );
+}
+
+static void WINAPI glImportSemaphoreWin32NameEXT( GLuint semaphore, GLenum handleType, const void* name ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p)\n", semaphore, handleType, name );
+  funcs->ext.p_glImportSemaphoreWin32NameEXT( semaphore, handleType, name );
+}
+
 static GLsync WINAPI glImportSyncEXT( GLenum external_sync_type, GLintptr external_sync, GLbitfield flags ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %ld, %d)\n", external_sync_type, external_sync, flags );
@@ -6270,6 +6426,12 @@ static GLboolean WINAPI glIsImageHandleResidentNV( GLuint64 handle ) {
   return funcs->ext.p_glIsImageHandleResidentNV( handle );
 }
 
+static GLboolean WINAPI glIsMemoryObjectEXT( GLuint memoryObject ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d)\n", memoryObject );
+  return funcs->ext.p_glIsMemoryObjectEXT( memoryObject );
+}
+
 static GLboolean WINAPI glIsNameAMD( GLenum identifier, GLuint name ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", identifier, name );
@@ -6372,6 +6534,12 @@ static GLboolean WINAPI glIsSampler( GLuint sampler ) {
   return funcs->ext.p_glIsSampler( sampler );
 }
 
+static GLboolean WINAPI glIsSemaphoreEXT( GLuint semaphore ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d)\n", semaphore );
+  return funcs->ext.p_glIsSemaphoreEXT( semaphore );
+}
+
 static GLboolean WINAPI glIsShader( GLuint shader ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", shader );
@@ -6444,6 +6612,24 @@ static GLboolean WINAPI glIsVertexAttribEnabledAPPLE( GLuint index, GLenum pname
   return funcs->ext.p_glIsVertexAttribEnabledAPPLE( index, pname );
 }
 
+static void WINAPI glLGPUCopyImageSubDataNVX( GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", sourceGpu, destinationGpuMask, srcName, srcTarget, srcLevel, srcX, srxY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth );
+  funcs->ext.p_glLGPUCopyImageSubDataNVX( sourceGpu, destinationGpuMask, srcName, srcTarget, srcLevel, srcX, srxY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth );
+}
+
+static void WINAPI glLGPUInterlockNVX( void ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("()\n");
+  funcs->ext.p_glLGPUInterlockNVX( );
+}
+
+static void WINAPI glLGPUNamedBufferSubDataNVX( GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %ld, %ld, %p)\n", gpuMask, buffer, offset, size, data );
+  funcs->ext.p_glLGPUNamedBufferSubDataNVX( gpuMask, buffer, offset, size, data );
+}
+
 static void WINAPI glLabelObjectEXT( GLenum type, GLuint object, GLsizei length, const GLchar* label ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %p)\n", type, object, length, label );
@@ -6978,6 +7164,12 @@ static void WINAPI glMaxShaderCompilerThreadsARB( GLuint count ) {
   funcs->ext.p_glMaxShaderCompilerThreadsARB( count );
 }
 
+static void WINAPI glMaxShaderCompilerThreadsKHR( GLuint count ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d)\n", count );
+  funcs->ext.p_glMaxShaderCompilerThreadsKHR( count );
+}
+
 static void WINAPI glMemoryBarrier( GLbitfield barriers ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", barriers );
@@ -6996,6 +7188,12 @@ static void WINAPI glMemoryBarrierEXT( GLbitfield barriers ) {
   funcs->ext.p_glMemoryBarrierEXT( barriers );
 }
 
+static void WINAPI glMemoryObjectParameterivEXT( GLuint memoryObject, GLenum pname, const GLint* params ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p)\n", memoryObject, pname, params );
+  funcs->ext.p_glMemoryObjectParameterivEXT( memoryObject, pname, params );
+}
+
 static void WINAPI glMinSampleShading( GLfloat value ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", value );
@@ -7092,9 +7290,15 @@ static void WINAPI glMultiDrawArraysIndirectBindlessNV( GLenum mode, const void*
   funcs->ext.p_glMultiDrawArraysIndirectBindlessNV( mode, indirect, drawCount, stride, vertexBufferCount );
 }
 
-static void WINAPI glMultiDrawArraysIndirectCountARB( GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) {
+static void WINAPI glMultiDrawArraysIndirectCount( GLenum mode, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
-  TRACE("(%d, %ld, %ld, %d, %d)\n", mode, indirect, drawcount, maxdrawcount, stride );
+  TRACE("(%d, %p, %ld, %d, %d)\n", mode, indirect, drawcount, maxdrawcount, stride );
+  funcs->ext.p_glMultiDrawArraysIndirectCount( mode, indirect, drawcount, maxdrawcount, stride );
+}
+
+static void WINAPI glMultiDrawArraysIndirectCountARB( GLenum mode, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p, %ld, %d, %d)\n", mode, indirect, drawcount, maxdrawcount, stride );
   funcs->ext.p_glMultiDrawArraysIndirectCountARB( mode, indirect, drawcount, maxdrawcount, stride );
 }
 
@@ -7146,9 +7350,15 @@ static void WINAPI glMultiDrawElementsIndirectBindlessNV( GLenum mode, GLenum ty
   funcs->ext.p_glMultiDrawElementsIndirectBindlessNV( mode, type, indirect, drawCount, stride, vertexBufferCount );
 }
 
-static void WINAPI glMultiDrawElementsIndirectCountARB( GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) {
+static void WINAPI glMultiDrawElementsIndirectCount( GLenum mode, GLenum type, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p, %ld, %d, %d)\n", mode, type, indirect, drawcount, maxdrawcount, stride );
+  funcs->ext.p_glMultiDrawElementsIndirectCount( mode, type, indirect, drawcount, maxdrawcount, stride );
+}
+
+static void WINAPI glMultiDrawElementsIndirectCountARB( GLenum mode, GLenum type, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
-  TRACE("(%d, %d, %ld, %ld, %d, %d)\n", mode, type, indirect, drawcount, maxdrawcount, stride );
+  TRACE("(%d, %d, %p, %ld, %d, %d)\n", mode, type, indirect, drawcount, maxdrawcount, stride );
   funcs->ext.p_glMultiDrawElementsIndirectCountARB( mode, type, indirect, drawcount, maxdrawcount, stride );
 }
 
@@ -8094,6 +8304,72 @@ static void WINAPI glMultiTexSubImage3DEXT( GLenum texunit, GLenum target, GLint
   funcs->ext.p_glMultiTexSubImage3DEXT( texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
 }
 
+static void WINAPI glMulticastBarrierNV( void ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("()\n");
+  funcs->ext.p_glMulticastBarrierNV( );
+}
+
+static void WINAPI glMulticastBlitFramebufferNV( GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", srcGpu, dstGpu, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
+  funcs->ext.p_glMulticastBlitFramebufferNV( srcGpu, dstGpu, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
+}
+
+static void WINAPI glMulticastBufferSubDataNV( GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const GLvoid* data ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %ld, %ld, %p)\n", gpuMask, buffer, offset, size, data );
+  funcs->ext.p_glMulticastBufferSubDataNV( gpuMask, buffer, offset, size, data );
+}
+
+static void WINAPI glMulticastCopyBufferSubDataNV( GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %ld, %ld, %ld)\n", readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size );
+  funcs->ext.p_glMulticastCopyBufferSubDataNV( readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size );
+}
+
+static void WINAPI glMulticastCopyImageSubDataNV( GLuint srcGpu, GLbitfield dstGpuMask, 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 ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)\n", srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth );
+  funcs->ext.p_glMulticastCopyImageSubDataNV( srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth );
+}
+
+static void WINAPI glMulticastFramebufferSampleLocationsfvNV( GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %p)\n", gpu, framebuffer, start, count, v );
+  funcs->ext.p_glMulticastFramebufferSampleLocationsfvNV( gpu, framebuffer, start, count, v );
+}
+
+static void WINAPI glMulticastGetQueryObjecti64vNV( GLuint gpu, GLuint id, GLenum pname, GLint64* params ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %p)\n", gpu, id, pname, params );
+  funcs->ext.p_glMulticastGetQueryObjecti64vNV( gpu, id, pname, params );
+}
+
+static void WINAPI glMulticastGetQueryObjectivNV( GLuint gpu, GLuint id, GLenum pname, GLint* params ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %p)\n", gpu, id, pname, params );
+  funcs->ext.p_glMulticastGetQueryObjectivNV( gpu, id, pname, params );
+}
+
+static void WINAPI glMulticastGetQueryObjectui64vNV( GLuint gpu, GLuint id, GLenum pname, GLuint64* params ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %p)\n", gpu, id, pname, params );
+  funcs->ext.p_glMulticastGetQueryObjectui64vNV( gpu, id, pname, params );
+}
+
+static void WINAPI glMulticastGetQueryObjectuivNV( GLuint gpu, GLuint id, GLenum pname, GLuint* params ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %p)\n", gpu, id, pname, params );
+  funcs->ext.p_glMulticastGetQueryObjectuivNV( gpu, id, pname, params );
+}
+
+static void WINAPI glMulticastWaitSyncNV( GLuint signalGpu, GLbitfield waitGpuMask ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d)\n", signalGpu, waitGpuMask );
+  funcs->ext.p_glMulticastWaitSyncNV( signalGpu, waitGpuMask );
+}
+
 static void WINAPI glNamedBufferData( GLuint buffer, GLsizeiptr size, const void* data, GLenum usage ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %ld, %p, %d)\n", buffer, size, data, usage );
@@ -8130,6 +8406,18 @@ static void WINAPI glNamedBufferStorageEXT( GLuint buffer, GLsizeiptr size, cons
   funcs->ext.p_glNamedBufferStorageEXT( buffer, size, data, flags );
 }
 
+static void WINAPI glNamedBufferStorageExternalEXT( GLuint buffer, GLintptr offset, GLsizeiptr size, void * clientBuffer, GLbitfield flags ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %ld, %ld, %p, %d)\n", buffer, offset, size, clientBuffer, flags );
+  funcs->ext.p_glNamedBufferStorageExternalEXT( buffer, offset, size, clientBuffer, flags );
+}
+
+static void WINAPI glNamedBufferStorageMemEXT( GLuint buffer, GLsizeiptr size, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %ld, %d, %s)\n", buffer, size, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glNamedBufferStorageMemEXT( buffer, size, memory, offset );
+}
+
 static void WINAPI glNamedBufferSubData( GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %ld, %ld, %p)\n", buffer, offset, size, data );
@@ -8202,6 +8490,12 @@ static void WINAPI glNamedFramebufferSampleLocationsfvNV( GLuint framebuffer, GL
   funcs->ext.p_glNamedFramebufferSampleLocationsfvNV( framebuffer, start, count, v );
 }
 
+static void WINAPI glNamedFramebufferSamplePositionsfvAMD( GLuint framebuffer, GLuint numsamples, GLuint pixelindex, const GLfloat* values ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %p)\n", framebuffer, numsamples, pixelindex, values );
+  funcs->ext.p_glNamedFramebufferSamplePositionsfvAMD( framebuffer, numsamples, pixelindex, values );
+}
+
 static void WINAPI glNamedFramebufferTexture( GLuint framebuffer, GLenum attachment, GLuint texture, GLint level ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", framebuffer, attachment, texture, level );
@@ -8898,6 +9192,12 @@ static GLint WINAPI glPollInstrumentsSGIX( GLint* marker_p ) {
   return funcs->ext.p_glPollInstrumentsSGIX( marker_p );
 }
 
+static void WINAPI glPolygonOffsetClamp( GLfloat factor, GLfloat units, GLfloat clamp ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%f, %f, %f)\n", factor, units, clamp );
+  funcs->ext.p_glPolygonOffsetClamp( factor, units, clamp );
+}
+
 static void WINAPI glPolygonOffsetClampEXT( GLfloat factor, GLfloat units, GLfloat clamp ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", factor, units, clamp );
@@ -10110,6 +10410,18 @@ static void WINAPI glQueryObjectParameteruiAMD( GLenum target, GLuint id, GLenum
   funcs->ext.p_glQueryObjectParameteruiAMD( target, id, pname, param );
 }
 
+static GLint WINAPI glQueryResourceNV( GLenum queryType, GLint tagId, GLuint bufSize, GLint* buffer ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %p)\n", queryType, tagId, bufSize, buffer );
+  return funcs->ext.p_glQueryResourceNV( queryType, tagId, bufSize, buffer );
+}
+
+static void WINAPI glQueryResourceTagNV( GLint tagId, const GLchar* tagString ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p)\n", tagId, tagString );
+  funcs->ext.p_glQueryResourceTagNV( tagId, tagString );
+}
+
 static void WINAPI glRasterPos2xOES( GLfixed x, GLfixed y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", x, y );
@@ -10194,12 +10506,24 @@ static void WINAPI glReferencePlaneSGIX( const GLdouble* equation ) {
   funcs->ext.p_glReferencePlaneSGIX( equation );
 }
 
+static GLboolean WINAPI glReleaseKeyedMutexWin32EXT( GLuint memory, GLuint64 key ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %s)\n", memory, wine_dbgstr_longlong(key) );
+  return funcs->ext.p_glReleaseKeyedMutexWin32EXT( memory, key );
+}
+
 static void WINAPI glReleaseShaderCompiler( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->ext.p_glReleaseShaderCompiler( );
 }
 
+static void WINAPI glRenderGpuMaskNV( GLbitfield mask ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d)\n", mask );
+  funcs->ext.p_glRenderGpuMaskNV( mask );
+}
+
 static void WINAPI glRenderbufferStorage( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", target, internalformat, width, height );
@@ -10800,6 +11124,12 @@ static void WINAPI glSelectTextureSGIS( GLenum target ) {
   funcs->ext.p_glSelectTextureSGIS( target );
 }
 
+static void WINAPI glSemaphoreParameterui64vEXT( GLuint semaphore, GLenum pname, const GLuint64* params ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p)\n", semaphore, pname, params );
+  funcs->ext.p_glSemaphoreParameterui64vEXT( semaphore, pname, params );
+}
+
 static void WINAPI glSeparableFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* row, const void* column ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %p, %p)\n", target, internalformat, width, height, format, type, row, column );
@@ -10896,6 +11226,36 @@ static void WINAPI glSharpenTexFuncSGIS( GLenum target, GLsizei n, const GLfloat
   funcs->ext.p_glSharpenTexFuncSGIS( target, n, points );
 }
 
+static void WINAPI glSignalSemaphoreEXT( GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint* textures, const GLenum* dstLayouts ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p, %d, %p, %p)\n", semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, dstLayouts );
+  funcs->ext.p_glSignalSemaphoreEXT( semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, dstLayouts );
+}
+
+static void WINAPI glSignalVkFenceNV( GLuint64 vkFence ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%s)\n", wine_dbgstr_longlong(vkFence) );
+  funcs->ext.p_glSignalVkFenceNV( vkFence );
+}
+
+static void WINAPI glSignalVkSemaphoreNV( GLuint64 vkSemaphore ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%s)\n", wine_dbgstr_longlong(vkSemaphore) );
+  funcs->ext.p_glSignalVkSemaphoreNV( vkSemaphore );
+}
+
+static void WINAPI glSpecializeShader( GLuint shader, const GLchar* pEntryPoint, GLuint numSpecializationConstants, const GLuint* pConstantIndex, const GLuint* pConstantValue ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p, %d, %p, %p)\n", shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue );
+  funcs->ext.p_glSpecializeShader( shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue );
+}
+
+static void WINAPI glSpecializeShaderARB( GLuint shader, const GLchar* pEntryPoint, GLuint numSpecializationConstants, const GLuint* pConstantIndex, const GLuint* pConstantValue ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %p, %d, %p, %p)\n", shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue );
+  funcs->ext.p_glSpecializeShaderARB( shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue );
+}
+
 static void WINAPI glSpriteParameterfSGIX( GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f)\n", pname, param );
@@ -11646,6 +12006,36 @@ static void WINAPI glTexStorage3DMultisample( GLenum target, GLsizei samples, GL
   funcs->ext.p_glTexStorage3DMultisample( target, samples, internalformat, width, height, depth, fixedsamplelocations );
 }
 
+static void WINAPI glTexStorageMem1DEXT( GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %s)\n", target, levels, internalFormat, width, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTexStorageMem1DEXT( target, levels, internalFormat, width, memory, offset );
+}
+
+static void WINAPI glTexStorageMem2DEXT( GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %s)\n", target, levels, internalFormat, width, height, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTexStorageMem2DEXT( target, levels, internalFormat, width, height, memory, offset );
+}
+
+static void WINAPI glTexStorageMem2DMultisampleEXT( GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %s)\n", target, samples, internalFormat, width, height, fixedSampleLocations, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTexStorageMem2DMultisampleEXT( target, samples, internalFormat, width, height, fixedSampleLocations, memory, offset );
+}
+
+static void WINAPI glTexStorageMem3DEXT( GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %s)\n", target, levels, internalFormat, width, height, depth, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTexStorageMem3DEXT( target, levels, internalFormat, width, height, depth, memory, offset );
+}
+
+static void WINAPI glTexStorageMem3DMultisampleEXT( GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %s)\n", target, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTexStorageMem3DMultisampleEXT( target, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset );
+}
+
 static void WINAPI glTexStorageSparseAMD( GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", target, internalFormat, width, height, depth, layers, flags );
@@ -11934,6 +12324,36 @@ static void WINAPI glTextureStorage3DMultisampleEXT( GLuint texture, GLenum targ
   funcs->ext.p_glTextureStorage3DMultisampleEXT( texture, target, samples, internalformat, width, height, depth, fixedsamplelocations );
 }
 
+static void WINAPI glTextureStorageMem1DEXT( GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %s)\n", texture, levels, internalFormat, width, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTextureStorageMem1DEXT( texture, levels, internalFormat, width, memory, offset );
+}
+
+static void WINAPI glTextureStorageMem2DEXT( GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %s)\n", texture, levels, internalFormat, width, height, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTextureStorageMem2DEXT( texture, levels, internalFormat, width, height, memory, offset );
+}
+
+static void WINAPI glTextureStorageMem2DMultisampleEXT( GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %s)\n", texture, samples, internalFormat, width, height, fixedSampleLocations, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTextureStorageMem2DMultisampleEXT( texture, samples, internalFormat, width, height, fixedSampleLocations, memory, offset );
+}
+
+static void WINAPI glTextureStorageMem3DEXT( GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %s)\n", texture, levels, internalFormat, width, height, depth, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTextureStorageMem3DEXT( texture, levels, internalFormat, width, height, depth, memory, offset );
+}
+
+static void WINAPI glTextureStorageMem3DMultisampleEXT( GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %s)\n", texture, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, wine_dbgstr_longlong(offset) );
+  funcs->ext.p_glTextureStorageMem3DMultisampleEXT( texture, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset );
+}
+
 static void WINAPI glTextureStorageSparseAMD( GLuint texture, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", texture, target, internalFormat, width, height, depth, layers, flags );
@@ -14934,12 +15354,36 @@ static void WINAPI glViewportIndexedfv( GLuint index, const GLfloat* v ) {
   funcs->ext.p_glViewportIndexedfv( index, v );
 }
 
+static void WINAPI glViewportPositionWScaleNV( GLuint index, GLfloat xcoeff, GLfloat ycoeff ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %f, %f)\n", index, xcoeff, ycoeff );
+  funcs->ext.p_glViewportPositionWScaleNV( index, xcoeff, ycoeff );
+}
+
+static void WINAPI glViewportSwizzleNV( GLuint index, GLenum swizzlex, GLenum swizzley, GLenum swizzlez, GLenum swizzlew ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %d, %d, %d)\n", index, swizzlex, swizzley, swizzlez, swizzlew );
+  funcs->ext.p_glViewportSwizzleNV( index, swizzlex, swizzley, swizzlez, swizzlew );
+}
+
+static void WINAPI glWaitSemaphoreEXT( GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint* textures, const GLenum* srcLayouts ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p, %d, %p, %p)\n", semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, srcLayouts );
+  funcs->ext.p_glWaitSemaphoreEXT( semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, srcLayouts );
+}
+
 static void WINAPI glWaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p, %d, %s)\n", sync, flags, wine_dbgstr_longlong(timeout) );
   funcs->ext.p_glWaitSync( sync, flags, timeout );
 }
 
+static void WINAPI glWaitVkSemaphoreNV( GLuint64 vkSemaphore ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%s)\n", wine_dbgstr_longlong(vkSemaphore) );
+  funcs->ext.p_glWaitVkSemaphoreNV( vkSemaphore );
+}
+
 static void WINAPI glWeightPathsNV( GLuint resultPath, GLsizei numPaths, const GLuint* paths, const GLfloat* weights ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p, %p)\n", resultPath, numPaths, paths, weights );
@@ -15336,14 +15780,21 @@ static void WINAPI glWindowPos4svMESA( const GLshort* v ) {
   funcs->ext.p_glWindowPos4svMESA( v );
 }
 
+static void WINAPI glWindowRectanglesEXT( GLenum mode, GLsizei count, const GLint* box ) {
+  const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
+  TRACE("(%d, %d, %p)\n", mode, count, box );
+  funcs->ext.p_glWindowRectanglesEXT( mode, count, box );
+}
+
 static void WINAPI glWriteMaskEXT( GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d)\n", res, in, outX, outY, outZ, outW );
   funcs->ext.p_glWriteMaskEXT( res, in, outX, outY, outZ, outW );
 }
 
-const OpenGL_extension extension_registry[2580] = {
+const OpenGL_extension extension_registry[2655] = {
   { "glAccumxOES", "GL_OES_fixed_point", glAccumxOES },
+  { "glAcquireKeyedMutexWin32EXT", "GL_EXT_win32_keyed_mutex", glAcquireKeyedMutexWin32EXT },
   { "glActiveProgramEXT", "GL_EXT_separate_shader_objects", glActiveProgramEXT },
   { "glActiveShaderProgram", "GL_ARB_separate_shader_objects GL_VERSION_4_1", glActiveShaderProgram },
   { "glActiveStencilFaceEXT", "GL_EXT_stencil_two_side", glActiveStencilFaceEXT },
@@ -15354,6 +15805,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glAlphaFragmentOp2ATI", "GL_ATI_fragment_shader", glAlphaFragmentOp2ATI },
   { "glAlphaFragmentOp3ATI", "GL_ATI_fragment_shader", glAlphaFragmentOp3ATI },
   { "glAlphaFuncxOES", "GL_OES_fixed_point", glAlphaFuncxOES },
+  { "glAlphaToCoverageDitherControlNV", "GL_NV_alpha_to_coverage_dither_control", glAlphaToCoverageDitherControlNV },
   { "glApplyFramebufferAttachmentCMAAINTEL", "GL_INTEL_framebuffer_CMAA", glApplyFramebufferAttachmentCMAAINTEL },
   { "glApplyTextureEXT", "GL_EXT_light_texture", glApplyTextureEXT },
   { "glAreProgramsResidentNV", "GL_NV_vertex_program", glAreProgramsResidentNV },
@@ -15473,6 +15925,8 @@ const OpenGL_extension extension_registry[2580] = {
   { "glBufferParameteriAPPLE", "GL_APPLE_flush_buffer_range", glBufferParameteriAPPLE },
   { "glBufferRegionEnabled", "GL_KTX_buffer_region", glBufferRegionEnabled },
   { "glBufferStorage", "GL_ARB_buffer_storage GL_VERSION_4_4", glBufferStorage },
+  { "glBufferStorageExternalEXT", "GL_EXT_external_buffer", glBufferStorageExternalEXT },
+  { "glBufferStorageMemEXT", "GL_EXT_memory_object", glBufferStorageMemEXT },
   { "glBufferSubData", "GL_VERSION_1_5", glBufferSubData },
   { "glBufferSubDataARB", "GL_ARB_vertex_buffer_object", glBufferSubDataARB },
   { "glCallCommandListNV", "GL_NV_command_list", glCallCommandListNV },
@@ -15592,6 +16046,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glCompressedTextureSubImage3D", "GL_ARB_direct_state_access GL_VERSION_4_5", glCompressedTextureSubImage3D },
   { "glCompressedTextureSubImage3DEXT", "GL_EXT_direct_state_access", glCompressedTextureSubImage3DEXT },
   { "glConservativeRasterParameterfNV", "GL_NV_conservative_raster_dilate", glConservativeRasterParameterfNV },
+  { "glConservativeRasterParameteriNV", "GL_NV_conservative_raster_pre_snap_triangles", glConservativeRasterParameteriNV },
   { "glConvolutionFilter1D", "GL_ARB_imaging", glConvolutionFilter1D },
   { "glConvolutionFilter1DEXT", "GL_EXT_convolution", glConvolutionFilter1DEXT },
   { "glConvolutionFilter2D", "GL_ARB_imaging", glConvolutionFilter2D },
@@ -15647,6 +16102,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glCreateBuffers", "GL_ARB_direct_state_access GL_VERSION_4_5", glCreateBuffers },
   { "glCreateCommandListsNV", "GL_NV_command_list", glCreateCommandListsNV },
   { "glCreateFramebuffers", "GL_ARB_direct_state_access GL_VERSION_4_5", glCreateFramebuffers },
+  { "glCreateMemoryObjectsEXT", "GL_EXT_memory_object", glCreateMemoryObjectsEXT },
   { "glCreatePerfQueryINTEL", "GL_INTEL_performance_query", glCreatePerfQueryINTEL },
   { "glCreateProgram", "GL_VERSION_2_0", glCreateProgram },
   { "glCreateProgramObjectARB", "GL_ARB_shader_objects", glCreateProgramObjectARB },
@@ -15688,6 +16144,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glDeleteFragmentShaderATI", "GL_ATI_fragment_shader", glDeleteFragmentShaderATI },
   { "glDeleteFramebuffers", "GL_ARB_framebuffer_object GL_VERSION_3_0", glDeleteFramebuffers },
   { "glDeleteFramebuffersEXT", "GL_EXT_framebuffer_object", glDeleteFramebuffersEXT },
+  { "glDeleteMemoryObjectsEXT", "GL_EXT_memory_object", glDeleteMemoryObjectsEXT },
   { "glDeleteNamedStringARB", "GL_ARB_shading_language_include", glDeleteNamedStringARB },
   { "glDeleteNamesAMD", "GL_AMD_name_gen_delete", glDeleteNamesAMD },
   { "glDeleteObjectARB", "GL_ARB_shader_objects", glDeleteObjectARB },
@@ -15702,9 +16159,11 @@ const OpenGL_extension extension_registry[2580] = {
   { "glDeleteProgramsNV", "GL_NV_vertex_program", glDeleteProgramsNV },
   { "glDeleteQueries", "GL_VERSION_1_5", glDeleteQueries },
   { "glDeleteQueriesARB", "GL_ARB_occlusion_query", glDeleteQueriesARB },
+  { "glDeleteQueryResourceTagNV", "GL_NV_query_resource_tag", glDeleteQueryResourceTagNV },
   { "glDeleteRenderbuffers", "GL_ARB_framebuffer_object GL_VERSION_3_0", glDeleteRenderbuffers },
   { "glDeleteRenderbuffersEXT", "GL_EXT_framebuffer_object", glDeleteRenderbuffersEXT },
   { "glDeleteSamplers", "GL_ARB_sampler_objects GL_VERSION_3_3", glDeleteSamplers },
+  { "glDeleteSemaphoresEXT", "GL_EXT_semaphore", glDeleteSemaphoresEXT },
   { "glDeleteShader", "GL_VERSION_2_0", glDeleteShader },
   { "glDeleteStatesNV", "GL_NV_command_list", glDeleteStatesNV },
   { "glDeleteSync", "GL_ARB_sync GL_VERSION_3_2", glDeleteSync },
@@ -15775,6 +16234,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glDrawTransformFeedbackNV", "GL_NV_transform_feedback2", glDrawTransformFeedbackNV },
   { "glDrawTransformFeedbackStream", "GL_ARB_transform_feedback3 GL_VERSION_4_0", glDrawTransformFeedbackStream },
   { "glDrawTransformFeedbackStreamInstanced", "GL_ARB_transform_feedback_instanced GL_VERSION_4_2", glDrawTransformFeedbackStreamInstanced },
+  { "glDrawVkImageNV", "GL_NV_draw_vulkan_image", glDrawVkImageNV },
   { "glEdgeFlagFormatNV", "GL_NV_vertex_buffer_unified_memory", glEdgeFlagFormatNV },
   { "glEdgeFlagPointerEXT", "GL_EXT_vertex_array", glEdgeFlagPointerEXT },
   { "glEdgeFlagPointerListIBM", "GL_IBM_vertex_array_lists", glEdgeFlagPointerListIBM },
@@ -15872,6 +16332,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glFramebufferRenderbufferEXT", "GL_EXT_framebuffer_object", glFramebufferRenderbufferEXT },
   { "glFramebufferSampleLocationsfvARB", "GL_ARB_sample_locations", glFramebufferSampleLocationsfvARB },
   { "glFramebufferSampleLocationsfvNV", "GL_NV_sample_locations", glFramebufferSampleLocationsfvNV },
+  { "glFramebufferSamplePositionsfvAMD", "GL_AMD_framebuffer_sample_positions", glFramebufferSamplePositionsfvAMD },
   { "glFramebufferTexture", "GL_VERSION_3_2", glFramebufferTexture },
   { "glFramebufferTexture1D", "GL_ARB_framebuffer_object GL_VERSION_3_0", glFramebufferTexture1D },
   { "glFramebufferTexture1DEXT", "GL_EXT_framebuffer_object", glFramebufferTexture1DEXT },
@@ -15907,9 +16368,11 @@ const OpenGL_extension extension_registry[2580] = {
   { "glGenProgramsNV", "GL_NV_vertex_program", glGenProgramsNV },
   { "glGenQueries", "GL_VERSION_1_5", glGenQueries },
   { "glGenQueriesARB", "GL_ARB_occlusion_query", glGenQueriesARB },
+  { "glGenQueryResourceTagNV", "GL_NV_query_resource_tag", glGenQueryResourceTagNV },
   { "glGenRenderbuffers", "GL_ARB_framebuffer_object GL_VERSION_3_0", glGenRenderbuffers },
   { "glGenRenderbuffersEXT", "GL_EXT_framebuffer_object", glGenRenderbuffersEXT },
   { "glGenSamplers", "GL_ARB_sampler_objects GL_VERSION_3_3", glGenSamplers },
+  { "glGenSemaphoresEXT", "GL_EXT_semaphore", glGenSemaphoresEXT },
   { "glGenSymbolsEXT", "GL_EXT_vertex_shader", glGenSymbolsEXT },
   { "glGenTexturesEXT", "GL_EXT_texture_object", glGenTexturesEXT },
   { "glGenTransformFeedbacks", "GL_ARB_transform_feedback2 GL_VERSION_4_0", glGenTransformFeedbacks },
@@ -16007,6 +16470,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glGetFragmentMaterialivSGIX", "GL_SGIX_fragment_lighting", glGetFragmentMaterialivSGIX },
   { "glGetFramebufferAttachmentParameteriv", "GL_ARB_framebuffer_object GL_VERSION_3_0", glGetFramebufferAttachmentParameteriv },
   { "glGetFramebufferAttachmentParameterivEXT", "GL_EXT_framebuffer_object", glGetFramebufferAttachmentParameterivEXT },
+  { "glGetFramebufferParameterfvAMD", "GL_AMD_framebuffer_sample_positions", glGetFramebufferParameterfvAMD },
   { "glGetFramebufferParameteriv", "GL_ARB_framebuffer_no_attachments GL_VERSION_4_3", glGetFramebufferParameteriv },
   { "glGetFramebufferParameterivEXT", "GL_EXT_direct_state_access", glGetFramebufferParameterivEXT },
   { "glGetGraphicsResetStatus", "GL_KHR_robustness GL_VERSION_4_5", glGetGraphicsResetStatus },
@@ -16050,6 +16514,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glGetMapParameterivNV", "GL_NV_evaluators", glGetMapParameterivNV },
   { "glGetMapxvOES", "GL_OES_fixed_point", glGetMapxvOES },
   { "glGetMaterialxOES", "GL_OES_fixed_point", glGetMaterialxOES },
+  { "glGetMemoryObjectParameterivEXT", "GL_EXT_memory_object", glGetMemoryObjectParameterivEXT },
   { "glGetMinmax", "GL_ARB_imaging", glGetMinmax },
   { "glGetMinmaxEXT", "GL_EXT_histogram", glGetMinmaxEXT },
   { "glGetMinmaxParameterfv", "GL_ARB_imaging", glGetMinmaxParameterfv },
@@ -16080,6 +16545,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glGetNamedBufferSubDataEXT", "GL_EXT_direct_state_access", glGetNamedBufferSubDataEXT },
   { "glGetNamedFramebufferAttachmentParameteriv", "GL_ARB_direct_state_access GL_VERSION_4_5", glGetNamedFramebufferAttachmentParameteriv },
   { "glGetNamedFramebufferAttachmentParameterivEXT", "GL_EXT_direct_state_access", glGetNamedFramebufferAttachmentParameterivEXT },
+  { "glGetNamedFramebufferParameterfvAMD", "GL_AMD_framebuffer_sample_positions", glGetNamedFramebufferParameterfvAMD },
   { "glGetNamedFramebufferParameteriv", "GL_ARB_direct_state_access GL_VERSION_4_5", glGetNamedFramebufferParameteriv },
   { "glGetNamedFramebufferParameterivEXT", "GL_EXT_direct_state_access", glGetNamedFramebufferParameterivEXT },
   { "glGetNamedProgramLocalParameterIivEXT", "GL_EXT_direct_state_access", glGetNamedProgramLocalParameterIivEXT },
@@ -16185,6 +16651,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glGetSamplerParameterIuiv", "GL_ARB_sampler_objects GL_VERSION_3_3", glGetSamplerParameterIuiv },
   { "glGetSamplerParameterfv", "GL_ARB_sampler_objects GL_VERSION_3_3", glGetSamplerParameterfv },
   { "glGetSamplerParameteriv", "GL_ARB_sampler_objects GL_VERSION_3_3", glGetSamplerParameteriv },
+  { "glGetSemaphoreParameterui64vEXT", "GL_EXT_semaphore", glGetSemaphoreParameterui64vEXT },
   { "glGetSeparableFilter", "GL_ARB_imaging", glGetSeparableFilter },
   { "glGetSeparableFilterEXT", "GL_EXT_convolution", glGetSeparableFilterEXT },
   { "glGetShaderInfoLog", "GL_VERSION_2_0", glGetShaderInfoLog },
@@ -16254,6 +16721,8 @@ const OpenGL_extension extension_registry[2580] = {
   { "glGetUniformui64vNV", "GL_AMD_gpu_shader_int64 GL_NV_shader_buffer_load", glGetUniformui64vNV },
   { "glGetUniformuiv", "GL_VERSION_3_0", glGetUniformuiv },
   { "glGetUniformuivEXT", "GL_EXT_gpu_shader4", glGetUniformuivEXT },
+  { "glGetUnsignedBytei_vEXT", "GL_EXT_memory_object GL_EXT_semaphore", glGetUnsignedBytei_vEXT },
+  { "glGetUnsignedBytevEXT", "GL_EXT_memory_object GL_EXT_semaphore", glGetUnsignedBytevEXT },
   { "glGetVariantArrayObjectfvATI", "GL_ATI_vertex_array_object", glGetVariantArrayObjectfvATI },
   { "glGetVariantArrayObjectivATI", "GL_ATI_vertex_array_object", glGetVariantArrayObjectivATI },
   { "glGetVariantBooleanvEXT", "GL_EXT_vertex_shader", glGetVariantBooleanvEXT },
@@ -16299,6 +16768,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glGetVideoivNV", "GL_NV_present_video", glGetVideoivNV },
   { "glGetVideoui64vNV", "GL_NV_present_video", glGetVideoui64vNV },
   { "glGetVideouivNV", "GL_NV_present_video", glGetVideouivNV },
+  { "glGetVkProcAddrNV", "GL_NV_draw_vulkan_image", glGetVkProcAddrNV },
   { "glGetnColorTable", "GL_VERSION_4_5", glGetnColorTable },
   { "glGetnColorTableARB", "GL_ARB_robustness", glGetnColorTableARB },
   { "glGetnCompressedTexImage", "GL_VERSION_4_5", glGetnCompressedTexImage },
@@ -16353,6 +16823,12 @@ const OpenGL_extension extension_registry[2580] = {
   { "glImageTransformParameterfvHP", "GL_HP_image_transform", glImageTransformParameterfvHP },
   { "glImageTransformParameteriHP", "GL_HP_image_transform", glImageTransformParameteriHP },
   { "glImageTransformParameterivHP", "GL_HP_image_transform", glImageTransformParameterivHP },
+  { "glImportMemoryFdEXT", "GL_EXT_memory_object_fd", glImportMemoryFdEXT },
+  { "glImportMemoryWin32HandleEXT", "GL_EXT_memory_object_win32", glImportMemoryWin32HandleEXT },
+  { "glImportMemoryWin32NameEXT", "GL_EXT_memory_object_win32", glImportMemoryWin32NameEXT },
+  { "glImportSemaphoreFdEXT", "GL_EXT_semaphore_fd", glImportSemaphoreFdEXT },
+  { "glImportSemaphoreWin32HandleEXT", "GL_EXT_semaphore_win32", glImportSemaphoreWin32HandleEXT },
+  { "glImportSemaphoreWin32NameEXT", "GL_EXT_semaphore_win32", glImportSemaphoreWin32NameEXT },
   { "glImportSyncEXT", "GL_EXT_x11_sync_object", glImportSyncEXT },
   { "glIndexFormatNV", "GL_NV_vertex_buffer_unified_memory", glIndexFormatNV },
   { "glIndexFuncEXT", "GL_EXT_index_func", glIndexFuncEXT },
@@ -16386,6 +16862,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glIsFramebufferEXT", "GL_EXT_framebuffer_object", glIsFramebufferEXT },
   { "glIsImageHandleResidentARB", "GL_ARB_bindless_texture", glIsImageHandleResidentARB },
   { "glIsImageHandleResidentNV", "GL_NV_bindless_texture", glIsImageHandleResidentNV },
+  { "glIsMemoryObjectEXT", "GL_EXT_memory_object", glIsMemoryObjectEXT },
   { "glIsNameAMD", "GL_AMD_name_gen_delete", glIsNameAMD },
   { "glIsNamedBufferResidentNV", "GL_NV_shader_buffer_load", glIsNamedBufferResidentNV },
   { "glIsNamedStringARB", "GL_ARB_shading_language_include", glIsNamedStringARB },
@@ -16403,6 +16880,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glIsRenderbuffer", "GL_ARB_framebuffer_object GL_VERSION_3_0", glIsRenderbuffer },
   { "glIsRenderbufferEXT", "GL_EXT_framebuffer_object", glIsRenderbufferEXT },
   { "glIsSampler", "GL_ARB_sampler_objects GL_VERSION_3_3", glIsSampler },
+  { "glIsSemaphoreEXT", "GL_EXT_semaphore", glIsSemaphoreEXT },
   { "glIsShader", "GL_VERSION_2_0", glIsShader },
   { "glIsStateNV", "GL_NV_command_list", glIsStateNV },
   { "glIsSync", "GL_ARB_sync GL_VERSION_3_2", glIsSync },
@@ -16415,6 +16893,9 @@ const OpenGL_extension extension_registry[2580] = {
   { "glIsVertexArray", "GL_ARB_vertex_array_object GL_VERSION_3_0", glIsVertexArray },
   { "glIsVertexArrayAPPLE", "GL_APPLE_vertex_array_object", glIsVertexArrayAPPLE },
   { "glIsVertexAttribEnabledAPPLE", "GL_APPLE_vertex_program_evaluators", glIsVertexAttribEnabledAPPLE },
+  { "glLGPUCopyImageSubDataNVX", "GL_NVX_linked_gpu_multicast", glLGPUCopyImageSubDataNVX },
+  { "glLGPUInterlockNVX", "GL_NVX_linked_gpu_multicast", glLGPUInterlockNVX },
+  { "glLGPUNamedBufferSubDataNVX", "GL_NVX_linked_gpu_multicast", glLGPUNamedBufferSubDataNVX },
   { "glLabelObjectEXT", "GL_EXT_debug_label", glLabelObjectEXT },
   { "glLightEnviSGIX", "GL_SGIX_fragment_lighting", glLightEnviSGIX },
   { "glLightModelxOES", "GL_OES_fixed_point", glLightModelxOES },
@@ -16504,9 +16985,11 @@ const OpenGL_extension extension_registry[2580] = {
   { "glMatrixTranslatedEXT", "GL_EXT_direct_state_access", glMatrixTranslatedEXT },
   { "glMatrixTranslatefEXT", "GL_EXT_direct_state_access", glMatrixTranslatefEXT },
   { "glMaxShaderCompilerThreadsARB", "GL_ARB_parallel_shader_compile", glMaxShaderCompilerThreadsARB },
+  { "glMaxShaderCompilerThreadsKHR", "GL_KHR_parallel_shader_compile", glMaxShaderCompilerThreadsKHR },
   { "glMemoryBarrier", "GL_ARB_shader_image_load_store GL_VERSION_4_2", glMemoryBarrier },
   { "glMemoryBarrierByRegion", "GL_ARB_ES3_1_compatibility GL_VERSION_4_5", glMemoryBarrierByRegion },
   { "glMemoryBarrierEXT", "GL_EXT_shader_image_load_store", glMemoryBarrierEXT },
+  { "glMemoryObjectParameterivEXT", "GL_EXT_memory_object", glMemoryObjectParameterivEXT },
   { "glMinSampleShading", "GL_VERSION_4_0", glMinSampleShading },
   { "glMinSampleShadingARB", "GL_ARB_sample_shading", glMinSampleShadingARB },
   { "glMinmax", "GL_ARB_imaging", glMinmax },
@@ -16523,6 +17006,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glMultiDrawArraysIndirectAMD", "GL_AMD_multi_draw_indirect", glMultiDrawArraysIndirectAMD },
   { "glMultiDrawArraysIndirectBindlessCountNV", "GL_NV_bindless_multi_draw_indirect_count", glMultiDrawArraysIndirectBindlessCountNV },
   { "glMultiDrawArraysIndirectBindlessNV", "GL_NV_bindless_multi_draw_indirect", glMultiDrawArraysIndirectBindlessNV },
+  { "glMultiDrawArraysIndirectCount", "GL_VERSION_4_6", glMultiDrawArraysIndirectCount },
   { "glMultiDrawArraysIndirectCountARB", "GL_ARB_indirect_parameters", glMultiDrawArraysIndirectCountARB },
   { "glMultiDrawElementArrayAPPLE", "GL_APPLE_element_array", glMultiDrawElementArrayAPPLE },
   { "glMultiDrawElements", "GL_VERSION_1_4", glMultiDrawElements },
@@ -16532,6 +17016,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glMultiDrawElementsIndirectAMD", "GL_AMD_multi_draw_indirect", glMultiDrawElementsIndirectAMD },
   { "glMultiDrawElementsIndirectBindlessCountNV", "GL_NV_bindless_multi_draw_indirect_count", glMultiDrawElementsIndirectBindlessCountNV },
   { "glMultiDrawElementsIndirectBindlessNV", "GL_NV_bindless_multi_draw_indirect", glMultiDrawElementsIndirectBindlessNV },
+  { "glMultiDrawElementsIndirectCount", "GL_VERSION_4_6", glMultiDrawElementsIndirectCount },
   { "glMultiDrawElementsIndirectCountARB", "GL_ARB_indirect_parameters", glMultiDrawElementsIndirectCountARB },
   { "glMultiDrawRangeElementArrayAPPLE", "GL_APPLE_element_array", glMultiDrawRangeElementArrayAPPLE },
   { "glMultiModeDrawArraysIBM", "GL_IBM_multimode_draw_arrays", glMultiModeDrawArraysIBM },
@@ -16690,12 +17175,25 @@ const OpenGL_extension extension_registry[2580] = {
   { "glMultiTexSubImage1DEXT", "GL_EXT_direct_state_access", glMultiTexSubImage1DEXT },
   { "glMultiTexSubImage2DEXT", "GL_EXT_direct_state_access", glMultiTexSubImage2DEXT },
   { "glMultiTexSubImage3DEXT", "GL_EXT_direct_state_access", glMultiTexSubImage3DEXT },
+  { "glMulticastBarrierNV", "GL_NV_gpu_multicast", glMulticastBarrierNV },
+  { "glMulticastBlitFramebufferNV", "GL_NV_gpu_multicast", glMulticastBlitFramebufferNV },
+  { "glMulticastBufferSubDataNV", "GL_NV_gpu_multicast", glMulticastBufferSubDataNV },
+  { "glMulticastCopyBufferSubDataNV", "GL_NV_gpu_multicast", glMulticastCopyBufferSubDataNV },
+  { "glMulticastCopyImageSubDataNV", "GL_NV_gpu_multicast", glMulticastCopyImageSubDataNV },
+  { "glMulticastFramebufferSampleLocationsfvNV", "GL_NV_gpu_multicast", glMulticastFramebufferSampleLocationsfvNV },
+  { "glMulticastGetQueryObjecti64vNV", "GL_NV_gpu_multicast", glMulticastGetQueryObjecti64vNV },
+  { "glMulticastGetQueryObjectivNV", "GL_NV_gpu_multicast", glMulticastGetQueryObjectivNV },
+  { "glMulticastGetQueryObjectui64vNV", "GL_NV_gpu_multicast", glMulticastGetQueryObjectui64vNV },
+  { "glMulticastGetQueryObjectuivNV", "GL_NV_gpu_multicast", glMulticastGetQueryObjectuivNV },
+  { "glMulticastWaitSyncNV", "GL_NV_gpu_multicast", glMulticastWaitSyncNV },
   { "glNamedBufferData", "GL_ARB_direct_state_access GL_VERSION_4_5", glNamedBufferData },
   { "glNamedBufferDataEXT", "GL_EXT_direct_state_access", glNamedBufferDataEXT },
   { "glNamedBufferPageCommitmentARB", "GL_ARB_sparse_buffer", glNamedBufferPageCommitmentARB },
   { "glNamedBufferPageCommitmentEXT", "GL_ARB_sparse_buffer", glNamedBufferPageCommitmentEXT },
   { "glNamedBufferStorage", "GL_ARB_direct_state_access GL_VERSION_4_5", glNamedBufferStorage },
   { "glNamedBufferStorageEXT", "GL_EXT_direct_state_access", glNamedBufferStorageEXT },
+  { "glNamedBufferStorageExternalEXT", "GL_EXT_external_buffer", glNamedBufferStorageExternalEXT },
+  { "glNamedBufferStorageMemEXT", "GL_EXT_memory_object", glNamedBufferStorageMemEXT },
   { "glNamedBufferSubData", "GL_ARB_direct_state_access GL_VERSION_4_5", glNamedBufferSubData },
   { "glNamedBufferSubDataEXT", "GL_EXT_direct_state_access", glNamedBufferSubDataEXT },
   { "glNamedCopyBufferSubDataEXT", "GL_EXT_direct_state_access", glNamedCopyBufferSubDataEXT },
@@ -16708,6 +17206,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glNamedFramebufferRenderbufferEXT", "GL_EXT_direct_state_access", glNamedFramebufferRenderbufferEXT },
   { "glNamedFramebufferSampleLocationsfvARB", "GL_ARB_sample_locations", glNamedFramebufferSampleLocationsfvARB },
   { "glNamedFramebufferSampleLocationsfvNV", "GL_NV_sample_locations", glNamedFramebufferSampleLocationsfvNV },
+  { "glNamedFramebufferSamplePositionsfvAMD", "GL_AMD_framebuffer_sample_positions", glNamedFramebufferSamplePositionsfvAMD },
   { "glNamedFramebufferTexture", "GL_ARB_direct_state_access GL_VERSION_4_5", glNamedFramebufferTexture },
   { "glNamedFramebufferTexture1DEXT", "GL_EXT_direct_state_access", glNamedFramebufferTexture1DEXT },
   { "glNamedFramebufferTexture2DEXT", "GL_EXT_direct_state_access", glNamedFramebufferTexture2DEXT },
@@ -16824,6 +17323,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glPointSizexOES", "GL_OES_fixed_point", glPointSizexOES },
   { "glPollAsyncSGIX", "GL_SGIX_async", glPollAsyncSGIX },
   { "glPollInstrumentsSGIX", "GL_SGIX_instruments", glPollInstrumentsSGIX },
+  { "glPolygonOffsetClamp", "GL_ARB_polygon_offset_clamp GL_VERSION_4_6", glPolygonOffsetClamp },
   { "glPolygonOffsetClampEXT", "GL_EXT_polygon_offset_clamp", glPolygonOffsetClampEXT },
   { "glPolygonOffsetEXT", "GL_EXT_polygon_offset", glPolygonOffsetEXT },
   { "glPolygonOffsetxOES", "GL_OES_fixed_point", glPolygonOffsetxOES },
@@ -16871,7 +17371,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glProgramParameter4dvNV", "GL_NV_vertex_program", glProgramParameter4dvNV },
   { "glProgramParameter4fNV", "GL_NV_vertex_program", glProgramParameter4fNV },
   { "glProgramParameter4fvNV", "GL_NV_vertex_program", glProgramParameter4fvNV },
-  { "glProgramParameteri", "GL_ARB_get_program_binary GL_VERSION_4_1", glProgramParameteri },
+  { "glProgramParameteri", "GL_ARB_get_program_binary GL_ARB_separate_shader_objects GL_VERSION_4_1", glProgramParameteri },
   { "glProgramParameteriARB", "GL_ARB_geometry_shader4", glProgramParameteriARB },
   { "glProgramParameteriEXT", "GL_EXT_geometry_shader4", glProgramParameteriEXT },
   { "glProgramParameters4dvNV", "GL_NV_vertex_program", glProgramParameters4dvNV },
@@ -17026,6 +17526,8 @@ const OpenGL_extension extension_registry[2580] = {
   { "glQueryCounter", "GL_ARB_timer_query GL_VERSION_3_3", glQueryCounter },
   { "glQueryMatrixxOES", "GL_OES_query_matrix", glQueryMatrixxOES },
   { "glQueryObjectParameteruiAMD", "GL_AMD_occlusion_query_event", glQueryObjectParameteruiAMD },
+  { "glQueryResourceNV", "GL_NV_query_resource", glQueryResourceNV },
+  { "glQueryResourceTagNV", "GL_NV_query_resource_tag", glQueryResourceTagNV },
   { "glRasterPos2xOES", "GL_OES_fixed_point", glRasterPos2xOES },
   { "glRasterPos2xvOES", "GL_OES_fixed_point", glRasterPos2xvOES },
   { "glRasterPos3xOES", "GL_OES_fixed_point", glRasterPos3xOES },
@@ -17040,7 +17542,9 @@ const OpenGL_extension extension_registry[2580] = {
   { "glRectxOES", "GL_OES_fixed_point", glRectxOES },
   { "glRectxvOES", "GL_OES_fixed_point", glRectxvOES },
   { "glReferencePlaneSGIX", "GL_SGIX_reference_plane", glReferencePlaneSGIX },
+  { "glReleaseKeyedMutexWin32EXT", "GL_EXT_win32_keyed_mutex", glReleaseKeyedMutexWin32EXT },
   { "glReleaseShaderCompiler", "GL_ARB_ES2_compatibility GL_VERSION_4_1", glReleaseShaderCompiler },
+  { "glRenderGpuMaskNV", "GL_NV_gpu_multicast", glRenderGpuMaskNV },
   { "glRenderbufferStorage", "GL_ARB_framebuffer_object GL_VERSION_3_0", glRenderbufferStorage },
   { "glRenderbufferStorageEXT", "GL_EXT_framebuffer_object", glRenderbufferStorageEXT },
   { "glRenderbufferStorageMultisample", "GL_ARB_framebuffer_object GL_VERSION_3_0", glRenderbufferStorageMultisample },
@@ -17141,6 +17645,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glSelectPerfMonitorCountersAMD", "GL_AMD_performance_monitor", glSelectPerfMonitorCountersAMD },
   { "glSelectTextureCoordSetSGIS", "GL_SGIS_multitexture", glSelectTextureCoordSetSGIS },
   { "glSelectTextureSGIS", "GL_SGIS_multitexture", glSelectTextureSGIS },
+  { "glSemaphoreParameterui64vEXT", "GL_EXT_semaphore", glSemaphoreParameterui64vEXT },
   { "glSeparableFilter2D", "GL_ARB_imaging", glSeparableFilter2D },
   { "glSeparableFilter2DEXT", "GL_EXT_convolution", glSeparableFilter2DEXT },
   { "glSetFenceAPPLE", "GL_APPLE_fence", glSetFenceAPPLE },
@@ -17157,6 +17662,11 @@ const OpenGL_extension extension_registry[2580] = {
   { "glShaderSourceARB", "GL_ARB_shader_objects", glShaderSourceARB },
   { "glShaderStorageBlockBinding", "GL_ARB_shader_storage_buffer_object GL_VERSION_4_3", glShaderStorageBlockBinding },
   { "glSharpenTexFuncSGIS", "GL_SGIS_sharpen_texture", glSharpenTexFuncSGIS },
+  { "glSignalSemaphoreEXT", "GL_EXT_semaphore", glSignalSemaphoreEXT },
+  { "glSignalVkFenceNV", "GL_NV_draw_vulkan_image", glSignalVkFenceNV },
+  { "glSignalVkSemaphoreNV", "GL_NV_draw_vulkan_image", glSignalVkSemaphoreNV },
+  { "glSpecializeShader", "GL_VERSION_4_6", glSpecializeShader },
+  { "glSpecializeShaderARB", "GL_ARB_gl_spirv", glSpecializeShaderARB },
   { "glSpriteParameterfSGIX", "GL_SGIX_sprite", glSpriteParameterfSGIX },
   { "glSpriteParameterfvSGIX", "GL_SGIX_sprite", glSpriteParameterfvSGIX },
   { "glSpriteParameteriSGIX", "GL_SGIX_sprite", glSpriteParameteriSGIX },
@@ -17282,6 +17792,11 @@ const OpenGL_extension extension_registry[2580] = {
   { "glTexStorage2DMultisample", "GL_ARB_texture_storage_multisample GL_VERSION_4_3", glTexStorage2DMultisample },
   { "glTexStorage3D", "GL_ARB_texture_storage GL_VERSION_4_2", glTexStorage3D },
   { "glTexStorage3DMultisample", "GL_ARB_texture_storage_multisample GL_VERSION_4_3", glTexStorage3DMultisample },
+  { "glTexStorageMem1DEXT", "GL_EXT_memory_object", glTexStorageMem1DEXT },
+  { "glTexStorageMem2DEXT", "GL_EXT_memory_object", glTexStorageMem2DEXT },
+  { "glTexStorageMem2DMultisampleEXT", "GL_EXT_memory_object", glTexStorageMem2DMultisampleEXT },
+  { "glTexStorageMem3DEXT", "GL_EXT_memory_object", glTexStorageMem3DEXT },
+  { "glTexStorageMem3DMultisampleEXT", "GL_EXT_memory_object", glTexStorageMem3DMultisampleEXT },
   { "glTexStorageSparseAMD", "GL_AMD_sparse_texture", glTexStorageSparseAMD },
   { "glTexSubImage1DEXT", "GL_EXT_subtexture", glTexSubImage1DEXT },
   { "glTexSubImage2DEXT", "GL_EXT_subtexture", glTexSubImage2DEXT },
@@ -17330,6 +17845,11 @@ const OpenGL_extension extension_registry[2580] = {
   { "glTextureStorage3DEXT", "GL_EXT_direct_state_access", glTextureStorage3DEXT },
   { "glTextureStorage3DMultisample", "GL_ARB_direct_state_access GL_VERSION_4_5", glTextureStorage3DMultisample },
   { "glTextureStorage3DMultisampleEXT", "GL_EXT_direct_state_access", glTextureStorage3DMultisampleEXT },
+  { "glTextureStorageMem1DEXT", "GL_EXT_memory_object", glTextureStorageMem1DEXT },
+  { "glTextureStorageMem2DEXT", "GL_EXT_memory_object", glTextureStorageMem2DEXT },
+  { "glTextureStorageMem2DMultisampleEXT", "GL_EXT_memory_object", glTextureStorageMem2DMultisampleEXT },
+  { "glTextureStorageMem3DEXT", "GL_EXT_memory_object", glTextureStorageMem3DEXT },
+  { "glTextureStorageMem3DMultisampleEXT", "GL_EXT_memory_object", glTextureStorageMem3DMultisampleEXT },
   { "glTextureStorageSparseAMD", "GL_AMD_sparse_texture", glTextureStorageSparseAMD },
   { "glTextureSubImage1D", "GL_ARB_direct_state_access GL_VERSION_4_5", glTextureSubImage1D },
   { "glTextureSubImage1DEXT", "GL_EXT_direct_state_access", glTextureSubImage1DEXT },
@@ -17830,7 +18350,11 @@ const OpenGL_extension extension_registry[2580] = {
   { "glViewportArrayv", "GL_ARB_viewport_array GL_VERSION_4_1", glViewportArrayv },
   { "glViewportIndexedf", "GL_ARB_viewport_array GL_VERSION_4_1", glViewportIndexedf },
   { "glViewportIndexedfv", "GL_ARB_viewport_array GL_VERSION_4_1", glViewportIndexedfv },
+  { "glViewportPositionWScaleNV", "GL_NV_clip_space_w_scaling", glViewportPositionWScaleNV },
+  { "glViewportSwizzleNV", "GL_NV_viewport_swizzle", glViewportSwizzleNV },
+  { "glWaitSemaphoreEXT", "GL_EXT_semaphore", glWaitSemaphoreEXT },
   { "glWaitSync", "GL_ARB_sync GL_VERSION_3_2", glWaitSync },
+  { "glWaitVkSemaphoreNV", "GL_NV_draw_vulkan_image", glWaitVkSemaphoreNV },
   { "glWeightPathsNV", "GL_NV_path_rendering", glWeightPathsNV },
   { "glWeightPointerARB", "GL_ARB_vertex_blend", glWeightPointerARB },
   { "glWeightbvARB", "GL_ARB_vertex_blend", glWeightbvARB },
@@ -17897,6 +18421,7 @@ const OpenGL_extension extension_registry[2580] = {
   { "glWindowPos4ivMESA", "GL_MESA_window_pos", glWindowPos4ivMESA },
   { "glWindowPos4sMESA", "GL_MESA_window_pos", glWindowPos4sMESA },
   { "glWindowPos4svMESA", "GL_MESA_window_pos", glWindowPos4svMESA },
+  { "glWindowRectanglesEXT", "GL_EXT_window_rectangles", glWindowRectanglesEXT },
   { "glWriteMaskEXT", "GL_EXT_vertex_shader", glWriteMaskEXT },
   { "wglAllocateMemoryNV", "WGL_NV_vertex_array_range", wglAllocateMemoryNV },
   { "wglBindTexImageARB", "WGL_ARB_render_texture", wglBindTexImageARB },
diff --git a/dlls/opengl32/opengl_norm.c b/dlls/opengl32/opengl_norm.c
index e396094e5e..a228d9cc8f 100644
--- a/dlls/opengl32/opengl_norm.c
+++ b/dlls/opengl32/opengl_norm.c
@@ -11,3006 +11,2004 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(opengl);
 
-/***********************************************************************
- *              glAccum (OPENGL32.@)
- */
 void WINAPI glAccum( GLenum op, GLfloat value ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f)\n", op, value );
   funcs->gl.p_glAccum( op, value );
 }
 
-/***********************************************************************
- *              glAlphaFunc (OPENGL32.@)
- */
 void WINAPI glAlphaFunc( GLenum func, GLfloat ref ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f)\n", func, ref );
   funcs->gl.p_glAlphaFunc( func, ref );
 }
 
-/***********************************************************************
- *              glAreTexturesResident (OPENGL32.@)
- */
 GLboolean WINAPI glAreTexturesResident( GLsizei n, const GLuint* textures, GLboolean* residences ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p, %p)\n", n, textures, residences );
   return funcs->gl.p_glAreTexturesResident( n, textures, residences );
 }
 
-/***********************************************************************
- *              glArrayElement (OPENGL32.@)
- */
 void WINAPI glArrayElement( GLint i ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", i );
   funcs->gl.p_glArrayElement( i );
 }
 
-/***********************************************************************
- *              glBegin (OPENGL32.@)
- */
 void WINAPI glBegin( GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mode );
   funcs->gl.p_glBegin( mode );
 }
 
-/***********************************************************************
- *              glBindTexture (OPENGL32.@)
- */
 void WINAPI glBindTexture( GLenum target, GLuint texture ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", target, texture );
   funcs->gl.p_glBindTexture( target, texture );
 }
 
-/***********************************************************************
- *              glBitmap (OPENGL32.@)
- */
 void WINAPI glBitmap( GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte* bitmap ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %f, %f, %f, %f, %p)\n", width, height, xorig, yorig, xmove, ymove, bitmap );
   funcs->gl.p_glBitmap( width, height, xorig, yorig, xmove, ymove, bitmap );
 }
 
-/***********************************************************************
- *              glBlendFunc (OPENGL32.@)
- */
 void WINAPI glBlendFunc( GLenum sfactor, GLenum dfactor ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", sfactor, dfactor );
   funcs->gl.p_glBlendFunc( sfactor, dfactor );
 }
 
-/***********************************************************************
- *              glCallList (OPENGL32.@)
- */
 void WINAPI glCallList( GLuint list ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", list );
   funcs->gl.p_glCallList( list );
 }
 
-/***********************************************************************
- *              glCallLists (OPENGL32.@)
- */
 void WINAPI glCallLists( GLsizei n, GLenum type, const void* lists ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", n, type, lists );
   funcs->gl.p_glCallLists( n, type, lists );
 }
 
-/***********************************************************************
- *              glClear (OPENGL32.@)
- */
 void WINAPI glClear( GLbitfield mask ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mask );
   funcs->gl.p_glClear( mask );
 }
 
-/***********************************************************************
- *              glClearAccum (OPENGL32.@)
- */
 void WINAPI glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", red, green, blue, alpha );
   funcs->gl.p_glClearAccum( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glClearColor (OPENGL32.@)
- */
 void WINAPI glClearColor( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", red, green, blue, alpha );
   funcs->gl.p_glClearColor( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glClearDepth (OPENGL32.@)
- */
 void WINAPI glClearDepth( GLdouble depth ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", depth );
   funcs->gl.p_glClearDepth( depth );
 }
 
-/***********************************************************************
- *              glClearIndex (OPENGL32.@)
- */
 void WINAPI glClearIndex( GLfloat c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", c );
   funcs->gl.p_glClearIndex( c );
 }
 
-/***********************************************************************
- *              glClearStencil (OPENGL32.@)
- */
 void WINAPI glClearStencil( GLint s ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", s );
   funcs->gl.p_glClearStencil( s );
 }
 
-/***********************************************************************
- *              glClipPlane (OPENGL32.@)
- */
 void WINAPI glClipPlane( GLenum plane, const GLdouble* equation ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", plane, equation );
   funcs->gl.p_glClipPlane( plane, equation );
 }
 
-/***********************************************************************
- *              glColor3b (OPENGL32.@)
- */
 void WINAPI glColor3b( GLbyte red, GLbyte green, GLbyte blue ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", red, green, blue );
   funcs->gl.p_glColor3b( red, green, blue );
 }
 
-/***********************************************************************
- *              glColor3bv (OPENGL32.@)
- */
 void WINAPI glColor3bv( const GLbyte* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor3bv( v );
 }
 
-/***********************************************************************
- *              glColor3d (OPENGL32.@)
- */
 void WINAPI glColor3d( GLdouble red, GLdouble green, GLdouble blue ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", red, green, blue );
   funcs->gl.p_glColor3d( red, green, blue );
 }
 
-/***********************************************************************
- *              glColor3dv (OPENGL32.@)
- */
 void WINAPI glColor3dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor3dv( v );
 }
 
-/***********************************************************************
- *              glColor3f (OPENGL32.@)
- */
 void WINAPI glColor3f( GLfloat red, GLfloat green, GLfloat blue ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", red, green, blue );
   funcs->gl.p_glColor3f( red, green, blue );
 }
 
-/***********************************************************************
- *              glColor3fv (OPENGL32.@)
- */
 void WINAPI glColor3fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor3fv( v );
 }
 
-/***********************************************************************
- *              glColor3i (OPENGL32.@)
- */
 void WINAPI glColor3i( GLint red, GLint green, GLint blue ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", red, green, blue );
   funcs->gl.p_glColor3i( red, green, blue );
 }
 
-/***********************************************************************
- *              glColor3iv (OPENGL32.@)
- */
 void WINAPI glColor3iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor3iv( v );
 }
 
-/***********************************************************************
- *              glColor3s (OPENGL32.@)
- */
 void WINAPI glColor3s( GLshort red, GLshort green, GLshort blue ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", red, green, blue );
   funcs->gl.p_glColor3s( red, green, blue );
 }
 
-/***********************************************************************
- *              glColor3sv (OPENGL32.@)
- */
 void WINAPI glColor3sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor3sv( v );
 }
 
-/***********************************************************************
- *              glColor3ub (OPENGL32.@)
- */
 void WINAPI glColor3ub( GLubyte red, GLubyte green, GLubyte blue ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", red, green, blue );
   funcs->gl.p_glColor3ub( red, green, blue );
 }
 
-/***********************************************************************
- *              glColor3ubv (OPENGL32.@)
- */
 void WINAPI glColor3ubv( const GLubyte* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor3ubv( v );
 }
 
-/***********************************************************************
- *              glColor3ui (OPENGL32.@)
- */
 void WINAPI glColor3ui( GLuint red, GLuint green, GLuint blue ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", red, green, blue );
   funcs->gl.p_glColor3ui( red, green, blue );
 }
 
-/***********************************************************************
- *              glColor3uiv (OPENGL32.@)
- */
 void WINAPI glColor3uiv( const GLuint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor3uiv( v );
 }
 
-/***********************************************************************
- *              glColor3us (OPENGL32.@)
- */
 void WINAPI glColor3us( GLushort red, GLushort green, GLushort blue ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", red, green, blue );
   funcs->gl.p_glColor3us( red, green, blue );
 }
 
-/***********************************************************************
- *              glColor3usv (OPENGL32.@)
- */
 void WINAPI glColor3usv( const GLushort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor3usv( v );
 }
 
-/***********************************************************************
- *              glColor4b (OPENGL32.@)
- */
 void WINAPI glColor4b( GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
   funcs->gl.p_glColor4b( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColor4bv (OPENGL32.@)
- */
 void WINAPI glColor4bv( const GLbyte* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor4bv( v );
 }
 
-/***********************************************************************
- *              glColor4d (OPENGL32.@)
- */
 void WINAPI glColor4d( GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", red, green, blue, alpha );
   funcs->gl.p_glColor4d( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColor4dv (OPENGL32.@)
- */
 void WINAPI glColor4dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor4dv( v );
 }
 
-/***********************************************************************
- *              glColor4f (OPENGL32.@)
- */
 void WINAPI glColor4f( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", red, green, blue, alpha );
   funcs->gl.p_glColor4f( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColor4fv (OPENGL32.@)
- */
 void WINAPI glColor4fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor4fv( v );
 }
 
-/***********************************************************************
- *              glColor4i (OPENGL32.@)
- */
 void WINAPI glColor4i( GLint red, GLint green, GLint blue, GLint alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
   funcs->gl.p_glColor4i( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColor4iv (OPENGL32.@)
- */
 void WINAPI glColor4iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor4iv( v );
 }
 
-/***********************************************************************
- *              glColor4s (OPENGL32.@)
- */
 void WINAPI glColor4s( GLshort red, GLshort green, GLshort blue, GLshort alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
   funcs->gl.p_glColor4s( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColor4sv (OPENGL32.@)
- */
 void WINAPI glColor4sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor4sv( v );
 }
 
-/***********************************************************************
- *              glColor4ub (OPENGL32.@)
- */
 void WINAPI glColor4ub( GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
   funcs->gl.p_glColor4ub( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColor4ubv (OPENGL32.@)
- */
 void WINAPI glColor4ubv( const GLubyte* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor4ubv( v );
 }
 
-/***********************************************************************
- *              glColor4ui (OPENGL32.@)
- */
 void WINAPI glColor4ui( GLuint red, GLuint green, GLuint blue, GLuint alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
   funcs->gl.p_glColor4ui( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColor4uiv (OPENGL32.@)
- */
 void WINAPI glColor4uiv( const GLuint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor4uiv( v );
 }
 
-/***********************************************************************
- *              glColor4us (OPENGL32.@)
- */
 void WINAPI glColor4us( GLushort red, GLushort green, GLushort blue, GLushort alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
   funcs->gl.p_glColor4us( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColor4usv (OPENGL32.@)
- */
 void WINAPI glColor4usv( const GLushort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glColor4usv( v );
 }
 
-/***********************************************************************
- *              glColorMask (OPENGL32.@)
- */
 void WINAPI glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", red, green, blue, alpha );
   funcs->gl.p_glColorMask( red, green, blue, alpha );
 }
 
-/***********************************************************************
- *              glColorMaterial (OPENGL32.@)
- */
 void WINAPI glColorMaterial( GLenum face, GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", face, mode );
   funcs->gl.p_glColorMaterial( face, mode );
 }
 
-/***********************************************************************
- *              glColorPointer (OPENGL32.@)
- */
 void WINAPI glColorPointer( GLint size, GLenum type, GLsizei stride, const void* pointer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
   funcs->gl.p_glColorPointer( size, type, stride, pointer );
 }
 
-/***********************************************************************
- *              glCopyPixels (OPENGL32.@)
- */
 void WINAPI glCopyPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum type ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d)\n", x, y, width, height, type );
   funcs->gl.p_glCopyPixels( x, y, width, height, type );
 }
 
-/***********************************************************************
- *              glCopyTexImage1D (OPENGL32.@)
- */
 void WINAPI glCopyTexImage1D( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %d)\n", target, level, internalformat, x, y, width, border );
   funcs->gl.p_glCopyTexImage1D( target, level, internalformat, x, y, width, border );
 }
 
-/***********************************************************************
- *              glCopyTexImage2D (OPENGL32.@)
- */
 void WINAPI glCopyTexImage2D( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, internalformat, x, y, width, height, border );
   funcs->gl.p_glCopyTexImage2D( target, level, internalformat, x, y, width, height, border );
 }
 
-/***********************************************************************
- *              glCopyTexSubImage1D (OPENGL32.@)
- */
 void WINAPI glCopyTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d)\n", target, level, xoffset, x, y, width );
   funcs->gl.p_glCopyTexSubImage1D( target, level, xoffset, x, y, width );
 }
 
-/***********************************************************************
- *              glCopyTexSubImage2D (OPENGL32.@)
- */
 void WINAPI glCopyTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d)\n", target, level, xoffset, yoffset, x, y, width, height );
   funcs->gl.p_glCopyTexSubImage2D( target, level, xoffset, yoffset, x, y, width, height );
 }
 
-/***********************************************************************
- *              glCullFace (OPENGL32.@)
- */
 void WINAPI glCullFace( GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mode );
   funcs->gl.p_glCullFace( mode );
 }
 
-/***********************************************************************
- *              glDeleteLists (OPENGL32.@)
- */
 void WINAPI glDeleteLists( GLuint list, GLsizei range ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", list, range );
   funcs->gl.p_glDeleteLists( list, range );
 }
 
-/***********************************************************************
- *              glDeleteTextures (OPENGL32.@)
- */
 void WINAPI glDeleteTextures( GLsizei n, const GLuint* textures ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", n, textures );
   funcs->gl.p_glDeleteTextures( n, textures );
 }
 
-/***********************************************************************
- *              glDepthFunc (OPENGL32.@)
- */
 void WINAPI glDepthFunc( GLenum func ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", func );
   funcs->gl.p_glDepthFunc( func );
 }
 
-/***********************************************************************
- *              glDepthMask (OPENGL32.@)
- */
 void WINAPI glDepthMask( GLboolean flag ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", flag );
   funcs->gl.p_glDepthMask( flag );
 }
 
-/***********************************************************************
- *              glDepthRange (OPENGL32.@)
- */
 void WINAPI glDepthRange( GLdouble nearParam, GLdouble farParam ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", nearParam, farParam );
   funcs->gl.p_glDepthRange( nearParam, farParam );
 }
 
-/***********************************************************************
- *              glDisable (OPENGL32.@)
- */
 void WINAPI glDisable( GLenum cap ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", cap );
   funcs->gl.p_glDisable( cap );
 }
 
-/***********************************************************************
- *              glDisableClientState (OPENGL32.@)
- */
 void WINAPI glDisableClientState( GLenum array ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", array );
   funcs->gl.p_glDisableClientState( array );
 }
 
-/***********************************************************************
- *              glDrawArrays (OPENGL32.@)
- */
 void WINAPI glDrawArrays( GLenum mode, GLint first, GLsizei count ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", mode, first, count );
   funcs->gl.p_glDrawArrays( mode, first, count );
 }
 
-/***********************************************************************
- *              glDrawBuffer (OPENGL32.@)
- */
 void WINAPI glDrawBuffer( GLenum buf ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", buf );
   funcs->gl.p_glDrawBuffer( buf );
 }
 
-/***********************************************************************
- *              glDrawElements (OPENGL32.@)
- */
 void WINAPI glDrawElements( GLenum mode, GLsizei count, GLenum type, const void* indices ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %p)\n", mode, count, type, indices );
   funcs->gl.p_glDrawElements( mode, count, type, indices );
 }
 
-/***********************************************************************
- *              glDrawPixels (OPENGL32.@)
- */
 void WINAPI glDrawPixels( GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %p)\n", width, height, format, type, pixels );
   funcs->gl.p_glDrawPixels( width, height, format, type, pixels );
 }
 
-/***********************************************************************
- *              glEdgeFlag (OPENGL32.@)
- */
 void WINAPI glEdgeFlag( GLboolean flag ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", flag );
   funcs->gl.p_glEdgeFlag( flag );
 }
 
-/***********************************************************************
- *              glEdgeFlagPointer (OPENGL32.@)
- */
 void WINAPI glEdgeFlagPointer( GLsizei stride, const void* pointer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", stride, pointer );
   funcs->gl.p_glEdgeFlagPointer( stride, pointer );
 }
 
-/***********************************************************************
- *              glEdgeFlagv (OPENGL32.@)
- */
 void WINAPI glEdgeFlagv( const GLboolean* flag ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", flag );
   funcs->gl.p_glEdgeFlagv( flag );
 }
 
-/***********************************************************************
- *              glEnable (OPENGL32.@)
- */
 void WINAPI glEnable( GLenum cap ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", cap );
   funcs->gl.p_glEnable( cap );
 }
 
-/***********************************************************************
- *              glEnableClientState (OPENGL32.@)
- */
 void WINAPI glEnableClientState( GLenum array ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", array );
   funcs->gl.p_glEnableClientState( array );
 }
 
-/***********************************************************************
- *              glEnd (OPENGL32.@)
- */
 void WINAPI glEnd( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glEnd( );
 }
 
-/***********************************************************************
- *              glEndList (OPENGL32.@)
- */
 void WINAPI glEndList( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glEndList( );
 }
 
-/***********************************************************************
- *              glEvalCoord1d (OPENGL32.@)
- */
 void WINAPI glEvalCoord1d( GLdouble u ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", u );
   funcs->gl.p_glEvalCoord1d( u );
 }
 
-/***********************************************************************
- *              glEvalCoord1dv (OPENGL32.@)
- */
 void WINAPI glEvalCoord1dv( const GLdouble* u ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", u );
   funcs->gl.p_glEvalCoord1dv( u );
 }
 
-/***********************************************************************
- *              glEvalCoord1f (OPENGL32.@)
- */
 void WINAPI glEvalCoord1f( GLfloat u ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", u );
   funcs->gl.p_glEvalCoord1f( u );
 }
 
-/***********************************************************************
- *              glEvalCoord1fv (OPENGL32.@)
- */
 void WINAPI glEvalCoord1fv( const GLfloat* u ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", u );
   funcs->gl.p_glEvalCoord1fv( u );
 }
 
-/***********************************************************************
- *              glEvalCoord2d (OPENGL32.@)
- */
 void WINAPI glEvalCoord2d( GLdouble u, GLdouble v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", u, v );
   funcs->gl.p_glEvalCoord2d( u, v );
 }
 
-/***********************************************************************
- *              glEvalCoord2dv (OPENGL32.@)
- */
 void WINAPI glEvalCoord2dv( const GLdouble* u ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", u );
   funcs->gl.p_glEvalCoord2dv( u );
 }
 
-/***********************************************************************
- *              glEvalCoord2f (OPENGL32.@)
- */
 void WINAPI glEvalCoord2f( GLfloat u, GLfloat v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", u, v );
   funcs->gl.p_glEvalCoord2f( u, v );
 }
 
-/***********************************************************************
- *              glEvalCoord2fv (OPENGL32.@)
- */
 void WINAPI glEvalCoord2fv( const GLfloat* u ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", u );
   funcs->gl.p_glEvalCoord2fv( u );
 }
 
-/***********************************************************************
- *              glEvalMesh1 (OPENGL32.@)
- */
 void WINAPI glEvalMesh1( GLenum mode, GLint i1, GLint i2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", mode, i1, i2 );
   funcs->gl.p_glEvalMesh1( mode, i1, i2 );
 }
 
-/***********************************************************************
- *              glEvalMesh2 (OPENGL32.@)
- */
 void WINAPI glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d)\n", mode, i1, i2, j1, j2 );
   funcs->gl.p_glEvalMesh2( mode, i1, i2, j1, j2 );
 }
 
-/***********************************************************************
- *              glEvalPoint1 (OPENGL32.@)
- */
 void WINAPI glEvalPoint1( GLint i ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", i );
   funcs->gl.p_glEvalPoint1( i );
 }
 
-/***********************************************************************
- *              glEvalPoint2 (OPENGL32.@)
- */
 void WINAPI glEvalPoint2( GLint i, GLint j ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", i, j );
   funcs->gl.p_glEvalPoint2( i, j );
 }
 
-/***********************************************************************
- *              glFeedbackBuffer (OPENGL32.@)
- */
 void WINAPI glFeedbackBuffer( GLsizei size, GLenum type, GLfloat* buffer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", size, type, buffer );
   funcs->gl.p_glFeedbackBuffer( size, type, buffer );
 }
 
-/***********************************************************************
- *              glFinish (OPENGL32.@)
- */
 void WINAPI glFinish( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glFinish( );
 }
 
-/***********************************************************************
- *              glFlush (OPENGL32.@)
- */
 void WINAPI glFlush( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glFlush( );
 }
 
-/***********************************************************************
- *              glFogf (OPENGL32.@)
- */
 void WINAPI glFogf( GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f)\n", pname, param );
   funcs->gl.p_glFogf( pname, param );
 }
 
-/***********************************************************************
- *              glFogfv (OPENGL32.@)
- */
 void WINAPI glFogfv( GLenum pname, const GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", pname, params );
   funcs->gl.p_glFogfv( pname, params );
 }
 
-/***********************************************************************
- *              glFogi (OPENGL32.@)
- */
 void WINAPI glFogi( GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", pname, param );
   funcs->gl.p_glFogi( pname, param );
 }
 
-/***********************************************************************
- *              glFogiv (OPENGL32.@)
- */
 void WINAPI glFogiv( GLenum pname, const GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", pname, params );
   funcs->gl.p_glFogiv( pname, params );
 }
 
-/***********************************************************************
- *              glFrontFace (OPENGL32.@)
- */
 void WINAPI glFrontFace( GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mode );
   funcs->gl.p_glFrontFace( mode );
 }
 
-/***********************************************************************
- *              glFrustum (OPENGL32.@)
- */
 void WINAPI glFrustum( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f, %f, %f)\n", left, right, bottom, top, zNear, zFar );
   funcs->gl.p_glFrustum( left, right, bottom, top, zNear, zFar );
 }
 
-/***********************************************************************
- *              glGenLists (OPENGL32.@)
- */
 GLuint WINAPI glGenLists( GLsizei range ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", range );
   return funcs->gl.p_glGenLists( range );
 }
 
-/***********************************************************************
- *              glGenTextures (OPENGL32.@)
- */
 void WINAPI glGenTextures( GLsizei n, GLuint* textures ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", n, textures );
   funcs->gl.p_glGenTextures( n, textures );
 }
 
-/***********************************************************************
- *              glGetBooleanv (OPENGL32.@)
- */
 void WINAPI glGetBooleanv( GLenum pname, GLboolean* data ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", pname, data );
   funcs->gl.p_glGetBooleanv( pname, data );
 }
 
-/***********************************************************************
- *              glGetClipPlane (OPENGL32.@)
- */
 void WINAPI glGetClipPlane( GLenum plane, GLdouble* equation ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", plane, equation );
   funcs->gl.p_glGetClipPlane( plane, equation );
 }
 
-/***********************************************************************
- *              glGetDoublev (OPENGL32.@)
- */
 void WINAPI glGetDoublev( GLenum pname, GLdouble* data ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", pname, data );
   funcs->gl.p_glGetDoublev( pname, data );
 }
 
-/***********************************************************************
- *              glGetError (OPENGL32.@)
- */
 GLenum WINAPI glGetError( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   return funcs->gl.p_glGetError( );
 }
 
-/***********************************************************************
- *              glGetFloatv (OPENGL32.@)
- */
 void WINAPI glGetFloatv( GLenum pname, GLfloat* data ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", pname, data );
   funcs->gl.p_glGetFloatv( pname, data );
 }
 
-/***********************************************************************
- *              glGetLightfv (OPENGL32.@)
- */
 void WINAPI glGetLightfv( GLenum light, GLenum pname, GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", light, pname, params );
   funcs->gl.p_glGetLightfv( light, pname, params );
 }
 
-/***********************************************************************
- *              glGetLightiv (OPENGL32.@)
- */
 void WINAPI glGetLightiv( GLenum light, GLenum pname, GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", light, pname, params );
   funcs->gl.p_glGetLightiv( light, pname, params );
 }
 
-/***********************************************************************
- *              glGetMapdv (OPENGL32.@)
- */
 void WINAPI glGetMapdv( GLenum target, GLenum query, GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, query, v );
   funcs->gl.p_glGetMapdv( target, query, v );
 }
 
-/***********************************************************************
- *              glGetMapfv (OPENGL32.@)
- */
 void WINAPI glGetMapfv( GLenum target, GLenum query, GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, query, v );
   funcs->gl.p_glGetMapfv( target, query, v );
 }
 
-/***********************************************************************
- *              glGetMapiv (OPENGL32.@)
- */
 void WINAPI glGetMapiv( GLenum target, GLenum query, GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, query, v );
   funcs->gl.p_glGetMapiv( target, query, v );
 }
 
-/***********************************************************************
- *              glGetMaterialfv (OPENGL32.@)
- */
 void WINAPI glGetMaterialfv( GLenum face, GLenum pname, GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", face, pname, params );
   funcs->gl.p_glGetMaterialfv( face, pname, params );
 }
 
-/***********************************************************************
- *              glGetMaterialiv (OPENGL32.@)
- */
 void WINAPI glGetMaterialiv( GLenum face, GLenum pname, GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", face, pname, params );
   funcs->gl.p_glGetMaterialiv( face, pname, params );
 }
 
-/***********************************************************************
- *              glGetPixelMapfv (OPENGL32.@)
- */
 void WINAPI glGetPixelMapfv( GLenum map, GLfloat* values ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", map, values );
   funcs->gl.p_glGetPixelMapfv( map, values );
 }
 
-/***********************************************************************
- *              glGetPixelMapuiv (OPENGL32.@)
- */
 void WINAPI glGetPixelMapuiv( GLenum map, GLuint* values ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", map, values );
   funcs->gl.p_glGetPixelMapuiv( map, values );
 }
 
-/***********************************************************************
- *              glGetPixelMapusv (OPENGL32.@)
- */
 void WINAPI glGetPixelMapusv( GLenum map, GLushort* values ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", map, values );
   funcs->gl.p_glGetPixelMapusv( map, values );
 }
 
-/***********************************************************************
- *              glGetPointerv (OPENGL32.@)
- */
 void WINAPI glGetPointerv( GLenum pname, void** params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", pname, params );
   funcs->gl.p_glGetPointerv( pname, params );
 }
 
-/***********************************************************************
- *              glGetPolygonStipple (OPENGL32.@)
- */
 void WINAPI glGetPolygonStipple( GLubyte* mask ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", mask );
   funcs->gl.p_glGetPolygonStipple( mask );
 }
 
-/***********************************************************************
- *              glGetTexEnvfv (OPENGL32.@)
- */
 void WINAPI glGetTexEnvfv( GLenum target, GLenum pname, GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
   funcs->gl.p_glGetTexEnvfv( target, pname, params );
 }
 
-/***********************************************************************
- *              glGetTexEnviv (OPENGL32.@)
- */
 void WINAPI glGetTexEnviv( GLenum target, GLenum pname, GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
   funcs->gl.p_glGetTexEnviv( target, pname, params );
 }
 
-/***********************************************************************
- *              glGetTexGendv (OPENGL32.@)
- */
 void WINAPI glGetTexGendv( GLenum coord, GLenum pname, GLdouble* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", coord, pname, params );
   funcs->gl.p_glGetTexGendv( coord, pname, params );
 }
 
-/***********************************************************************
- *              glGetTexGenfv (OPENGL32.@)
- */
 void WINAPI glGetTexGenfv( GLenum coord, GLenum pname, GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", coord, pname, params );
   funcs->gl.p_glGetTexGenfv( coord, pname, params );
 }
 
-/***********************************************************************
- *              glGetTexGeniv (OPENGL32.@)
- */
 void WINAPI glGetTexGeniv( GLenum coord, GLenum pname, GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", coord, pname, params );
   funcs->gl.p_glGetTexGeniv( coord, pname, params );
 }
 
-/***********************************************************************
- *              glGetTexImage (OPENGL32.@)
- */
 void WINAPI glGetTexImage( GLenum target, GLint level, GLenum format, GLenum type, void* pixels ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %p)\n", target, level, format, type, pixels );
   funcs->gl.p_glGetTexImage( target, level, format, type, pixels );
 }
 
-/***********************************************************************
- *              glGetTexLevelParameterfv (OPENGL32.@)
- */
 void WINAPI glGetTexLevelParameterfv( GLenum target, GLint level, GLenum pname, GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %p)\n", target, level, pname, params );
   funcs->gl.p_glGetTexLevelParameterfv( target, level, pname, params );
 }
 
-/***********************************************************************
- *              glGetTexLevelParameteriv (OPENGL32.@)
- */
 void WINAPI glGetTexLevelParameteriv( GLenum target, GLint level, GLenum pname, GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %p)\n", target, level, pname, params );
   funcs->gl.p_glGetTexLevelParameteriv( target, level, pname, params );
 }
 
-/***********************************************************************
- *              glGetTexParameterfv (OPENGL32.@)
- */
 void WINAPI glGetTexParameterfv( GLenum target, GLenum pname, GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
   funcs->gl.p_glGetTexParameterfv( target, pname, params );
 }
 
-/***********************************************************************
- *              glGetTexParameteriv (OPENGL32.@)
- */
 void WINAPI glGetTexParameteriv( GLenum target, GLenum pname, GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
   funcs->gl.p_glGetTexParameteriv( target, pname, params );
 }
 
-/***********************************************************************
- *              glHint (OPENGL32.@)
- */
 void WINAPI glHint( GLenum target, GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", target, mode );
   funcs->gl.p_glHint( target, mode );
 }
 
-/***********************************************************************
- *              glIndexMask (OPENGL32.@)
- */
 void WINAPI glIndexMask( GLuint mask ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mask );
   funcs->gl.p_glIndexMask( mask );
 }
 
-/***********************************************************************
- *              glIndexPointer (OPENGL32.@)
- */
 void WINAPI glIndexPointer( GLenum type, GLsizei stride, const void* pointer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", type, stride, pointer );
   funcs->gl.p_glIndexPointer( type, stride, pointer );
 }
 
-/***********************************************************************
- *              glIndexd (OPENGL32.@)
- */
 void WINAPI glIndexd( GLdouble c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", c );
   funcs->gl.p_glIndexd( c );
 }
 
-/***********************************************************************
- *              glIndexdv (OPENGL32.@)
- */
 void WINAPI glIndexdv( const GLdouble* c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", c );
   funcs->gl.p_glIndexdv( c );
 }
 
-/***********************************************************************
- *              glIndexf (OPENGL32.@)
- */
 void WINAPI glIndexf( GLfloat c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", c );
   funcs->gl.p_glIndexf( c );
 }
 
-/***********************************************************************
- *              glIndexfv (OPENGL32.@)
- */
 void WINAPI glIndexfv( const GLfloat* c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", c );
   funcs->gl.p_glIndexfv( c );
 }
 
-/***********************************************************************
- *              glIndexi (OPENGL32.@)
- */
 void WINAPI glIndexi( GLint c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", c );
   funcs->gl.p_glIndexi( c );
 }
 
-/***********************************************************************
- *              glIndexiv (OPENGL32.@)
- */
 void WINAPI glIndexiv( const GLint* c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", c );
   funcs->gl.p_glIndexiv( c );
 }
 
-/***********************************************************************
- *              glIndexs (OPENGL32.@)
- */
 void WINAPI glIndexs( GLshort c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", c );
   funcs->gl.p_glIndexs( c );
 }
 
-/***********************************************************************
- *              glIndexsv (OPENGL32.@)
- */
 void WINAPI glIndexsv( const GLshort* c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", c );
   funcs->gl.p_glIndexsv( c );
 }
 
-/***********************************************************************
- *              glIndexub (OPENGL32.@)
- */
 void WINAPI glIndexub( GLubyte c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", c );
   funcs->gl.p_glIndexub( c );
 }
 
-/***********************************************************************
- *              glIndexubv (OPENGL32.@)
- */
 void WINAPI glIndexubv( const GLubyte* c ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", c );
   funcs->gl.p_glIndexubv( c );
 }
 
-/***********************************************************************
- *              glInitNames (OPENGL32.@)
- */
 void WINAPI glInitNames( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glInitNames( );
 }
 
-/***********************************************************************
- *              glInterleavedArrays (OPENGL32.@)
- */
 void WINAPI glInterleavedArrays( GLenum format, GLsizei stride, const void* pointer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", format, stride, pointer );
   funcs->gl.p_glInterleavedArrays( format, stride, pointer );
 }
 
-/***********************************************************************
- *              glIsEnabled (OPENGL32.@)
- */
 GLboolean WINAPI glIsEnabled( GLenum cap ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", cap );
   return funcs->gl.p_glIsEnabled( cap );
 }
 
-/***********************************************************************
- *              glIsList (OPENGL32.@)
- */
 GLboolean WINAPI glIsList( GLuint list ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", list );
   return funcs->gl.p_glIsList( list );
 }
 
-/***********************************************************************
- *              glIsTexture (OPENGL32.@)
- */
 GLboolean WINAPI glIsTexture( GLuint texture ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", texture );
   return funcs->gl.p_glIsTexture( texture );
 }
 
-/***********************************************************************
- *              glLightModelf (OPENGL32.@)
- */
 void WINAPI glLightModelf( GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f)\n", pname, param );
   funcs->gl.p_glLightModelf( pname, param );
 }
 
-/***********************************************************************
- *              glLightModelfv (OPENGL32.@)
- */
 void WINAPI glLightModelfv( GLenum pname, const GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", pname, params );
   funcs->gl.p_glLightModelfv( pname, params );
 }
 
-/***********************************************************************
- *              glLightModeli (OPENGL32.@)
- */
 void WINAPI glLightModeli( GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", pname, param );
   funcs->gl.p_glLightModeli( pname, param );
 }
 
-/***********************************************************************
- *              glLightModeliv (OPENGL32.@)
- */
 void WINAPI glLightModeliv( GLenum pname, const GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", pname, params );
   funcs->gl.p_glLightModeliv( pname, params );
 }
 
-/***********************************************************************
- *              glLightf (OPENGL32.@)
- */
 void WINAPI glLightf( GLenum light, GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %f)\n", light, pname, param );
   funcs->gl.p_glLightf( light, pname, param );
 }
 
-/***********************************************************************
- *              glLightfv (OPENGL32.@)
- */
 void WINAPI glLightfv( GLenum light, GLenum pname, const GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", light, pname, params );
   funcs->gl.p_glLightfv( light, pname, params );
 }
 
-/***********************************************************************
- *              glLighti (OPENGL32.@)
- */
 void WINAPI glLighti( GLenum light, GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", light, pname, param );
   funcs->gl.p_glLighti( light, pname, param );
 }
 
-/***********************************************************************
- *              glLightiv (OPENGL32.@)
- */
 void WINAPI glLightiv( GLenum light, GLenum pname, const GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", light, pname, params );
   funcs->gl.p_glLightiv( light, pname, params );
 }
 
-/***********************************************************************
- *              glLineStipple (OPENGL32.@)
- */
 void WINAPI glLineStipple( GLint factor, GLushort pattern ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", factor, pattern );
   funcs->gl.p_glLineStipple( factor, pattern );
 }
 
-/***********************************************************************
- *              glLineWidth (OPENGL32.@)
- */
 void WINAPI glLineWidth( GLfloat width ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", width );
   funcs->gl.p_glLineWidth( width );
 }
 
-/***********************************************************************
- *              glListBase (OPENGL32.@)
- */
 void WINAPI glListBase( GLuint base ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", base );
   funcs->gl.p_glListBase( base );
 }
 
-/***********************************************************************
- *              glLoadIdentity (OPENGL32.@)
- */
 void WINAPI glLoadIdentity( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glLoadIdentity( );
 }
 
-/***********************************************************************
- *              glLoadMatrixd (OPENGL32.@)
- */
 void WINAPI glLoadMatrixd( const GLdouble* m ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", m );
   funcs->gl.p_glLoadMatrixd( m );
 }
 
-/***********************************************************************
- *              glLoadMatrixf (OPENGL32.@)
- */
 void WINAPI glLoadMatrixf( const GLfloat* m ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", m );
   funcs->gl.p_glLoadMatrixf( m );
 }
 
-/***********************************************************************
- *              glLoadName (OPENGL32.@)
- */
 void WINAPI glLoadName( GLuint name ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", name );
   funcs->gl.p_glLoadName( name );
 }
 
-/***********************************************************************
- *              glLogicOp (OPENGL32.@)
- */
 void WINAPI glLogicOp( GLenum opcode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", opcode );
   funcs->gl.p_glLogicOp( opcode );
 }
 
-/***********************************************************************
- *              glMap1d (OPENGL32.@)
- */
 void WINAPI glMap1d( GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble* points ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f, %f, %d, %d, %p)\n", target, u1, u2, stride, order, points );
   funcs->gl.p_glMap1d( target, u1, u2, stride, order, points );
 }
 
-/***********************************************************************
- *              glMap1f (OPENGL32.@)
- */
 void WINAPI glMap1f( GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f, %f, %d, %d, %p)\n", target, u1, u2, stride, order, points );
   funcs->gl.p_glMap1f( target, u1, u2, stride, order, points );
 }
 
-/***********************************************************************
- *              glMap2d (OPENGL32.@)
- */
 void WINAPI glMap2d( GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble* points ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f, %f, %d, %d, %f, %f, %d, %d, %p)\n", target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
   funcs->gl.p_glMap2d( target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
 }
 
-/***********************************************************************
- *              glMap2f (OPENGL32.@)
- */
 void WINAPI glMap2f( GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat* points ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f, %f, %d, %d, %f, %f, %d, %d, %p)\n", target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
   funcs->gl.p_glMap2f( target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points );
 }
 
-/***********************************************************************
- *              glMapGrid1d (OPENGL32.@)
- */
 void WINAPI glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f, %f)\n", un, u1, u2 );
   funcs->gl.p_glMapGrid1d( un, u1, u2 );
 }
 
-/***********************************************************************
- *              glMapGrid1f (OPENGL32.@)
- */
 void WINAPI glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f, %f)\n", un, u1, u2 );
   funcs->gl.p_glMapGrid1f( un, u1, u2 );
 }
 
-/***********************************************************************
- *              glMapGrid2d (OPENGL32.@)
- */
 void WINAPI glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f, %f, %d, %f, %f)\n", un, u1, u2, vn, v1, v2 );
   funcs->gl.p_glMapGrid2d( un, u1, u2, vn, v1, v2 );
 }
 
-/***********************************************************************
- *              glMapGrid2f (OPENGL32.@)
- */
 void WINAPI glMapGrid2f( GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f, %f, %d, %f, %f)\n", un, u1, u2, vn, v1, v2 );
   funcs->gl.p_glMapGrid2f( un, u1, u2, vn, v1, v2 );
 }
 
-/***********************************************************************
- *              glMaterialf (OPENGL32.@)
- */
 void WINAPI glMaterialf( GLenum face, GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %f)\n", face, pname, param );
   funcs->gl.p_glMaterialf( face, pname, param );
 }
 
-/***********************************************************************
- *              glMaterialfv (OPENGL32.@)
- */
 void WINAPI glMaterialfv( GLenum face, GLenum pname, const GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", face, pname, params );
   funcs->gl.p_glMaterialfv( face, pname, params );
 }
 
-/***********************************************************************
- *              glMateriali (OPENGL32.@)
- */
 void WINAPI glMateriali( GLenum face, GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", face, pname, param );
   funcs->gl.p_glMateriali( face, pname, param );
 }
 
-/***********************************************************************
- *              glMaterialiv (OPENGL32.@)
- */
 void WINAPI glMaterialiv( GLenum face, GLenum pname, const GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", face, pname, params );
   funcs->gl.p_glMaterialiv( face, pname, params );
 }
 
-/***********************************************************************
- *              glMatrixMode (OPENGL32.@)
- */
 void WINAPI glMatrixMode( GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mode );
   funcs->gl.p_glMatrixMode( mode );
 }
 
-/***********************************************************************
- *              glMultMatrixd (OPENGL32.@)
- */
 void WINAPI glMultMatrixd( const GLdouble* m ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", m );
   funcs->gl.p_glMultMatrixd( m );
 }
 
-/***********************************************************************
- *              glMultMatrixf (OPENGL32.@)
- */
 void WINAPI glMultMatrixf( const GLfloat* m ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", m );
   funcs->gl.p_glMultMatrixf( m );
 }
 
-/***********************************************************************
- *              glNewList (OPENGL32.@)
- */
 void WINAPI glNewList( GLuint list, GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", list, mode );
   funcs->gl.p_glNewList( list, mode );
 }
 
-/***********************************************************************
- *              glNormal3b (OPENGL32.@)
- */
 void WINAPI glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", nx, ny, nz );
   funcs->gl.p_glNormal3b( nx, ny, nz );
 }
 
-/***********************************************************************
- *              glNormal3bv (OPENGL32.@)
- */
 void WINAPI glNormal3bv( const GLbyte* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glNormal3bv( v );
 }
 
-/***********************************************************************
- *              glNormal3d (OPENGL32.@)
- */
 void WINAPI glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", nx, ny, nz );
   funcs->gl.p_glNormal3d( nx, ny, nz );
 }
 
-/***********************************************************************
- *              glNormal3dv (OPENGL32.@)
- */
 void WINAPI glNormal3dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glNormal3dv( v );
 }
 
-/***********************************************************************
- *              glNormal3f (OPENGL32.@)
- */
 void WINAPI glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", nx, ny, nz );
   funcs->gl.p_glNormal3f( nx, ny, nz );
 }
 
-/***********************************************************************
- *              glNormal3fv (OPENGL32.@)
- */
 void WINAPI glNormal3fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glNormal3fv( v );
 }
 
-/***********************************************************************
- *              glNormal3i (OPENGL32.@)
- */
 void WINAPI glNormal3i( GLint nx, GLint ny, GLint nz ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", nx, ny, nz );
   funcs->gl.p_glNormal3i( nx, ny, nz );
 }
 
-/***********************************************************************
- *              glNormal3iv (OPENGL32.@)
- */
 void WINAPI glNormal3iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glNormal3iv( v );
 }
 
-/***********************************************************************
- *              glNormal3s (OPENGL32.@)
- */
 void WINAPI glNormal3s( GLshort nx, GLshort ny, GLshort nz ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", nx, ny, nz );
   funcs->gl.p_glNormal3s( nx, ny, nz );
 }
 
-/***********************************************************************
- *              glNormal3sv (OPENGL32.@)
- */
 void WINAPI glNormal3sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glNormal3sv( v );
 }
 
-/***********************************************************************
- *              glNormalPointer (OPENGL32.@)
- */
 void WINAPI glNormalPointer( GLenum type, GLsizei stride, const void* pointer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", type, stride, pointer );
   funcs->gl.p_glNormalPointer( type, stride, pointer );
 }
 
-/***********************************************************************
- *              glOrtho (OPENGL32.@)
- */
 void WINAPI glOrtho( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f, %f, %f)\n", left, right, bottom, top, zNear, zFar );
   funcs->gl.p_glOrtho( left, right, bottom, top, zNear, zFar );
 }
 
-/***********************************************************************
- *              glPassThrough (OPENGL32.@)
- */
 void WINAPI glPassThrough( GLfloat token ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", token );
   funcs->gl.p_glPassThrough( token );
 }
 
-/***********************************************************************
- *              glPixelMapfv (OPENGL32.@)
- */
 void WINAPI glPixelMapfv( GLenum map, GLsizei mapsize, const GLfloat* values ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", map, mapsize, values );
   funcs->gl.p_glPixelMapfv( map, mapsize, values );
 }
 
-/***********************************************************************
- *              glPixelMapuiv (OPENGL32.@)
- */
 void WINAPI glPixelMapuiv( GLenum map, GLsizei mapsize, const GLuint* values ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", map, mapsize, values );
   funcs->gl.p_glPixelMapuiv( map, mapsize, values );
 }
 
-/***********************************************************************
- *              glPixelMapusv (OPENGL32.@)
- */
 void WINAPI glPixelMapusv( GLenum map, GLsizei mapsize, const GLushort* values ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", map, mapsize, values );
   funcs->gl.p_glPixelMapusv( map, mapsize, values );
 }
 
-/***********************************************************************
- *              glPixelStoref (OPENGL32.@)
- */
 void WINAPI glPixelStoref( GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f)\n", pname, param );
   funcs->gl.p_glPixelStoref( pname, param );
 }
 
-/***********************************************************************
- *              glPixelStorei (OPENGL32.@)
- */
 void WINAPI glPixelStorei( GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", pname, param );
   funcs->gl.p_glPixelStorei( pname, param );
 }
 
-/***********************************************************************
- *              glPixelTransferf (OPENGL32.@)
- */
 void WINAPI glPixelTransferf( GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %f)\n", pname, param );
   funcs->gl.p_glPixelTransferf( pname, param );
 }
 
-/***********************************************************************
- *              glPixelTransferi (OPENGL32.@)
- */
 void WINAPI glPixelTransferi( GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", pname, param );
   funcs->gl.p_glPixelTransferi( pname, param );
 }
 
-/***********************************************************************
- *              glPixelZoom (OPENGL32.@)
- */
 void WINAPI glPixelZoom( GLfloat xfactor, GLfloat yfactor ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", xfactor, yfactor );
   funcs->gl.p_glPixelZoom( xfactor, yfactor );
 }
 
-/***********************************************************************
- *              glPointSize (OPENGL32.@)
- */
 void WINAPI glPointSize( GLfloat size ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", size );
   funcs->gl.p_glPointSize( size );
 }
 
-/***********************************************************************
- *              glPolygonMode (OPENGL32.@)
- */
 void WINAPI glPolygonMode( GLenum face, GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", face, mode );
   funcs->gl.p_glPolygonMode( face, mode );
 }
 
-/***********************************************************************
- *              glPolygonOffset (OPENGL32.@)
- */
 void WINAPI glPolygonOffset( GLfloat factor, GLfloat units ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", factor, units );
   funcs->gl.p_glPolygonOffset( factor, units );
 }
 
-/***********************************************************************
- *              glPolygonStipple (OPENGL32.@)
- */
 void WINAPI glPolygonStipple( const GLubyte* mask ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", mask );
   funcs->gl.p_glPolygonStipple( mask );
 }
 
-/***********************************************************************
- *              glPopAttrib (OPENGL32.@)
- */
 void WINAPI glPopAttrib( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glPopAttrib( );
 }
 
-/***********************************************************************
- *              glPopClientAttrib (OPENGL32.@)
- */
 void WINAPI glPopClientAttrib( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glPopClientAttrib( );
 }
 
-/***********************************************************************
- *              glPopMatrix (OPENGL32.@)
- */
 void WINAPI glPopMatrix( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glPopMatrix( );
 }
 
-/***********************************************************************
- *              glPopName (OPENGL32.@)
- */
 void WINAPI glPopName( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glPopName( );
 }
 
-/***********************************************************************
- *              glPrioritizeTextures (OPENGL32.@)
- */
 void WINAPI glPrioritizeTextures( GLsizei n, const GLuint* textures, const GLfloat* priorities ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p, %p)\n", n, textures, priorities );
   funcs->gl.p_glPrioritizeTextures( n, textures, priorities );
 }
 
-/***********************************************************************
- *              glPushAttrib (OPENGL32.@)
- */
 void WINAPI glPushAttrib( GLbitfield mask ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mask );
   funcs->gl.p_glPushAttrib( mask );
 }
 
-/***********************************************************************
- *              glPushClientAttrib (OPENGL32.@)
- */
 void WINAPI glPushClientAttrib( GLbitfield mask ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mask );
   funcs->gl.p_glPushClientAttrib( mask );
 }
 
-/***********************************************************************
- *              glPushMatrix (OPENGL32.@)
- */
 void WINAPI glPushMatrix( void ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("()\n");
   funcs->gl.p_glPushMatrix( );
 }
 
-/***********************************************************************
- *              glPushName (OPENGL32.@)
- */
 void WINAPI glPushName( GLuint name ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", name );
   funcs->gl.p_glPushName( name );
 }
 
-/***********************************************************************
- *              glRasterPos2d (OPENGL32.@)
- */
 void WINAPI glRasterPos2d( GLdouble x, GLdouble y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", x, y );
   funcs->gl.p_glRasterPos2d( x, y );
 }
 
-/***********************************************************************
- *              glRasterPos2dv (OPENGL32.@)
- */
 void WINAPI glRasterPos2dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos2dv( v );
 }
 
-/***********************************************************************
- *              glRasterPos2f (OPENGL32.@)
- */
 void WINAPI glRasterPos2f( GLfloat x, GLfloat y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", x, y );
   funcs->gl.p_glRasterPos2f( x, y );
 }
 
-/***********************************************************************
- *              glRasterPos2fv (OPENGL32.@)
- */
 void WINAPI glRasterPos2fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos2fv( v );
 }
 
-/***********************************************************************
- *              glRasterPos2i (OPENGL32.@)
- */
 void WINAPI glRasterPos2i( GLint x, GLint y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", x, y );
   funcs->gl.p_glRasterPos2i( x, y );
 }
 
-/***********************************************************************
- *              glRasterPos2iv (OPENGL32.@)
- */
 void WINAPI glRasterPos2iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos2iv( v );
 }
 
-/***********************************************************************
- *              glRasterPos2s (OPENGL32.@)
- */
 void WINAPI glRasterPos2s( GLshort x, GLshort y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", x, y );
   funcs->gl.p_glRasterPos2s( x, y );
 }
 
-/***********************************************************************
- *              glRasterPos2sv (OPENGL32.@)
- */
 void WINAPI glRasterPos2sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos2sv( v );
 }
 
-/***********************************************************************
- *              glRasterPos3d (OPENGL32.@)
- */
 void WINAPI glRasterPos3d( GLdouble x, GLdouble y, GLdouble z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", x, y, z );
   funcs->gl.p_glRasterPos3d( x, y, z );
 }
 
-/***********************************************************************
- *              glRasterPos3dv (OPENGL32.@)
- */
 void WINAPI glRasterPos3dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos3dv( v );
 }
 
-/***********************************************************************
- *              glRasterPos3f (OPENGL32.@)
- */
 void WINAPI glRasterPos3f( GLfloat x, GLfloat y, GLfloat z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", x, y, z );
   funcs->gl.p_glRasterPos3f( x, y, z );
 }
 
-/***********************************************************************
- *              glRasterPos3fv (OPENGL32.@)
- */
 void WINAPI glRasterPos3fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos3fv( v );
 }
 
-/***********************************************************************
- *              glRasterPos3i (OPENGL32.@)
- */
 void WINAPI glRasterPos3i( GLint x, GLint y, GLint z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", x, y, z );
   funcs->gl.p_glRasterPos3i( x, y, z );
 }
 
-/***********************************************************************
- *              glRasterPos3iv (OPENGL32.@)
- */
 void WINAPI glRasterPos3iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos3iv( v );
 }
 
-/***********************************************************************
- *              glRasterPos3s (OPENGL32.@)
- */
 void WINAPI glRasterPos3s( GLshort x, GLshort y, GLshort z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", x, y, z );
   funcs->gl.p_glRasterPos3s( x, y, z );
 }
 
-/***********************************************************************
- *              glRasterPos3sv (OPENGL32.@)
- */
 void WINAPI glRasterPos3sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos3sv( v );
 }
 
-/***********************************************************************
- *              glRasterPos4d (OPENGL32.@)
- */
 void WINAPI glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", x, y, z, w );
   funcs->gl.p_glRasterPos4d( x, y, z, w );
 }
 
-/***********************************************************************
- *              glRasterPos4dv (OPENGL32.@)
- */
 void WINAPI glRasterPos4dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos4dv( v );
 }
 
-/***********************************************************************
- *              glRasterPos4f (OPENGL32.@)
- */
 void WINAPI glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", x, y, z, w );
   funcs->gl.p_glRasterPos4f( x, y, z, w );
 }
 
-/***********************************************************************
- *              glRasterPos4fv (OPENGL32.@)
- */
 void WINAPI glRasterPos4fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos4fv( v );
 }
 
-/***********************************************************************
- *              glRasterPos4i (OPENGL32.@)
- */
 void WINAPI glRasterPos4i( GLint x, GLint y, GLint z, GLint w ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
   funcs->gl.p_glRasterPos4i( x, y, z, w );
 }
 
-/***********************************************************************
- *              glRasterPos4iv (OPENGL32.@)
- */
 void WINAPI glRasterPos4iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos4iv( v );
 }
 
-/***********************************************************************
- *              glRasterPos4s (OPENGL32.@)
- */
 void WINAPI glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
   funcs->gl.p_glRasterPos4s( x, y, z, w );
 }
 
-/***********************************************************************
- *              glRasterPos4sv (OPENGL32.@)
- */
 void WINAPI glRasterPos4sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glRasterPos4sv( v );
 }
 
-/***********************************************************************
- *              glReadBuffer (OPENGL32.@)
- */
 void WINAPI glReadBuffer( GLenum src ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", src );
   funcs->gl.p_glReadBuffer( src );
 }
 
-/***********************************************************************
- *              glReadPixels (OPENGL32.@)
- */
 void WINAPI glReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", x, y, width, height, format, type, pixels );
   funcs->gl.p_glReadPixels( x, y, width, height, format, type, pixels );
 }
 
-/***********************************************************************
- *              glRectd (OPENGL32.@)
- */
 void WINAPI glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", x1, y1, x2, y2 );
   funcs->gl.p_glRectd( x1, y1, x2, y2 );
 }
 
-/***********************************************************************
- *              glRectdv (OPENGL32.@)
- */
 void WINAPI glRectdv( const GLdouble* v1, const GLdouble* v2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p, %p)\n", v1, v2 );
   funcs->gl.p_glRectdv( v1, v2 );
 }
 
-/***********************************************************************
- *              glRectf (OPENGL32.@)
- */
 void WINAPI glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", x1, y1, x2, y2 );
   funcs->gl.p_glRectf( x1, y1, x2, y2 );
 }
 
-/***********************************************************************
- *              glRectfv (OPENGL32.@)
- */
 void WINAPI glRectfv( const GLfloat* v1, const GLfloat* v2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p, %p)\n", v1, v2 );
   funcs->gl.p_glRectfv( v1, v2 );
 }
 
-/***********************************************************************
- *              glRecti (OPENGL32.@)
- */
 void WINAPI glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", x1, y1, x2, y2 );
   funcs->gl.p_glRecti( x1, y1, x2, y2 );
 }
 
-/***********************************************************************
- *              glRectiv (OPENGL32.@)
- */
 void WINAPI glRectiv( const GLint* v1, const GLint* v2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p, %p)\n", v1, v2 );
   funcs->gl.p_glRectiv( v1, v2 );
 }
 
-/***********************************************************************
- *              glRects (OPENGL32.@)
- */
 void WINAPI glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", x1, y1, x2, y2 );
   funcs->gl.p_glRects( x1, y1, x2, y2 );
 }
 
-/***********************************************************************
- *              glRectsv (OPENGL32.@)
- */
 void WINAPI glRectsv( const GLshort* v1, const GLshort* v2 ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p, %p)\n", v1, v2 );
   funcs->gl.p_glRectsv( v1, v2 );
 }
 
-/***********************************************************************
- *              glRenderMode (OPENGL32.@)
- */
 GLint WINAPI glRenderMode( GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mode );
   return funcs->gl.p_glRenderMode( mode );
 }
 
-/***********************************************************************
- *              glRotated (OPENGL32.@)
- */
 void WINAPI glRotated( GLdouble angle, GLdouble x, GLdouble y, GLdouble z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", angle, x, y, z );
   funcs->gl.p_glRotated( angle, x, y, z );
 }
 
-/***********************************************************************
- *              glRotatef (OPENGL32.@)
- */
 void WINAPI glRotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", angle, x, y, z );
   funcs->gl.p_glRotatef( angle, x, y, z );
 }
 
-/***********************************************************************
- *              glScaled (OPENGL32.@)
- */
 void WINAPI glScaled( GLdouble x, GLdouble y, GLdouble z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", x, y, z );
   funcs->gl.p_glScaled( x, y, z );
 }
 
-/***********************************************************************
- *              glScalef (OPENGL32.@)
- */
 void WINAPI glScalef( GLfloat x, GLfloat y, GLfloat z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", x, y, z );
   funcs->gl.p_glScalef( x, y, z );
 }
 
-/***********************************************************************
- *              glScissor (OPENGL32.@)
- */
 void WINAPI glScissor( GLint x, GLint y, GLsizei width, GLsizei height ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", x, y, width, height );
   funcs->gl.p_glScissor( x, y, width, height );
 }
 
-/***********************************************************************
- *              glSelectBuffer (OPENGL32.@)
- */
 void WINAPI glSelectBuffer( GLsizei size, GLuint* buffer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %p)\n", size, buffer );
   funcs->gl.p_glSelectBuffer( size, buffer );
 }
 
-/***********************************************************************
- *              glShadeModel (OPENGL32.@)
- */
 void WINAPI glShadeModel( GLenum mode ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mode );
   funcs->gl.p_glShadeModel( mode );
 }
 
-/***********************************************************************
- *              glStencilFunc (OPENGL32.@)
- */
 void WINAPI glStencilFunc( GLenum func, GLint ref, GLuint mask ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", func, ref, mask );
   funcs->gl.p_glStencilFunc( func, ref, mask );
 }
 
-/***********************************************************************
- *              glStencilMask (OPENGL32.@)
- */
 void WINAPI glStencilMask( GLuint mask ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", mask );
   funcs->gl.p_glStencilMask( mask );
 }
 
-/***********************************************************************
- *              glStencilOp (OPENGL32.@)
- */
 void WINAPI glStencilOp( GLenum fail, GLenum zfail, GLenum zpass ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", fail, zfail, zpass );
   funcs->gl.p_glStencilOp( fail, zfail, zpass );
 }
 
-/***********************************************************************
- *              glTexCoord1d (OPENGL32.@)
- */
 void WINAPI glTexCoord1d( GLdouble s ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", s );
   funcs->gl.p_glTexCoord1d( s );
 }
 
-/***********************************************************************
- *              glTexCoord1dv (OPENGL32.@)
- */
 void WINAPI glTexCoord1dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord1dv( v );
 }
 
-/***********************************************************************
- *              glTexCoord1f (OPENGL32.@)
- */
 void WINAPI glTexCoord1f( GLfloat s ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f)\n", s );
   funcs->gl.p_glTexCoord1f( s );
 }
 
-/***********************************************************************
- *              glTexCoord1fv (OPENGL32.@)
- */
 void WINAPI glTexCoord1fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord1fv( v );
 }
 
-/***********************************************************************
- *              glTexCoord1i (OPENGL32.@)
- */
 void WINAPI glTexCoord1i( GLint s ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", s );
   funcs->gl.p_glTexCoord1i( s );
 }
 
-/***********************************************************************
- *              glTexCoord1iv (OPENGL32.@)
- */
 void WINAPI glTexCoord1iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord1iv( v );
 }
 
-/***********************************************************************
- *              glTexCoord1s (OPENGL32.@)
- */
 void WINAPI glTexCoord1s( GLshort s ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d)\n", s );
   funcs->gl.p_glTexCoord1s( s );
 }
 
-/***********************************************************************
- *              glTexCoord1sv (OPENGL32.@)
- */
 void WINAPI glTexCoord1sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord1sv( v );
 }
 
-/***********************************************************************
- *              glTexCoord2d (OPENGL32.@)
- */
 void WINAPI glTexCoord2d( GLdouble s, GLdouble t ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", s, t );
   funcs->gl.p_glTexCoord2d( s, t );
 }
 
-/***********************************************************************
- *              glTexCoord2dv (OPENGL32.@)
- */
 void WINAPI glTexCoord2dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord2dv( v );
 }
 
-/***********************************************************************
- *              glTexCoord2f (OPENGL32.@)
- */
 void WINAPI glTexCoord2f( GLfloat s, GLfloat t ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", s, t );
   funcs->gl.p_glTexCoord2f( s, t );
 }
 
-/***********************************************************************
- *              glTexCoord2fv (OPENGL32.@)
- */
 void WINAPI glTexCoord2fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord2fv( v );
 }
 
-/***********************************************************************
- *              glTexCoord2i (OPENGL32.@)
- */
 void WINAPI glTexCoord2i( GLint s, GLint t ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", s, t );
   funcs->gl.p_glTexCoord2i( s, t );
 }
 
-/***********************************************************************
- *              glTexCoord2iv (OPENGL32.@)
- */
 void WINAPI glTexCoord2iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord2iv( v );
 }
 
-/***********************************************************************
- *              glTexCoord2s (OPENGL32.@)
- */
 void WINAPI glTexCoord2s( GLshort s, GLshort t ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", s, t );
   funcs->gl.p_glTexCoord2s( s, t );
 }
 
-/***********************************************************************
- *              glTexCoord2sv (OPENGL32.@)
- */
 void WINAPI glTexCoord2sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord2sv( v );
 }
 
-/***********************************************************************
- *              glTexCoord3d (OPENGL32.@)
- */
 void WINAPI glTexCoord3d( GLdouble s, GLdouble t, GLdouble r ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", s, t, r );
   funcs->gl.p_glTexCoord3d( s, t, r );
 }
 
-/***********************************************************************
- *              glTexCoord3dv (OPENGL32.@)
- */
 void WINAPI glTexCoord3dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord3dv( v );
 }
 
-/***********************************************************************
- *              glTexCoord3f (OPENGL32.@)
- */
 void WINAPI glTexCoord3f( GLfloat s, GLfloat t, GLfloat r ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", s, t, r );
   funcs->gl.p_glTexCoord3f( s, t, r );
 }
 
-/***********************************************************************
- *              glTexCoord3fv (OPENGL32.@)
- */
 void WINAPI glTexCoord3fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord3fv( v );
 }
 
-/***********************************************************************
- *              glTexCoord3i (OPENGL32.@)
- */
 void WINAPI glTexCoord3i( GLint s, GLint t, GLint r ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", s, t, r );
   funcs->gl.p_glTexCoord3i( s, t, r );
 }
 
-/***********************************************************************
- *              glTexCoord3iv (OPENGL32.@)
- */
 void WINAPI glTexCoord3iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord3iv( v );
 }
 
-/***********************************************************************
- *              glTexCoord3s (OPENGL32.@)
- */
 void WINAPI glTexCoord3s( GLshort s, GLshort t, GLshort r ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", s, t, r );
   funcs->gl.p_glTexCoord3s( s, t, r );
 }
 
-/***********************************************************************
- *              glTexCoord3sv (OPENGL32.@)
- */
 void WINAPI glTexCoord3sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord3sv( v );
 }
 
-/***********************************************************************
- *              glTexCoord4d (OPENGL32.@)
- */
 void WINAPI glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", s, t, r, q );
   funcs->gl.p_glTexCoord4d( s, t, r, q );
 }
 
-/***********************************************************************
- *              glTexCoord4dv (OPENGL32.@)
- */
 void WINAPI glTexCoord4dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord4dv( v );
 }
 
-/***********************************************************************
- *              glTexCoord4f (OPENGL32.@)
- */
 void WINAPI glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", s, t, r, q );
   funcs->gl.p_glTexCoord4f( s, t, r, q );
 }
 
-/***********************************************************************
- *              glTexCoord4fv (OPENGL32.@)
- */
 void WINAPI glTexCoord4fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord4fv( v );
 }
 
-/***********************************************************************
- *              glTexCoord4i (OPENGL32.@)
- */
 void WINAPI glTexCoord4i( GLint s, GLint t, GLint r, GLint q ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", s, t, r, q );
   funcs->gl.p_glTexCoord4i( s, t, r, q );
 }
 
-/***********************************************************************
- *              glTexCoord4iv (OPENGL32.@)
- */
 void WINAPI glTexCoord4iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord4iv( v );
 }
 
-/***********************************************************************
- *              glTexCoord4s (OPENGL32.@)
- */
 void WINAPI glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", s, t, r, q );
   funcs->gl.p_glTexCoord4s( s, t, r, q );
 }
 
-/***********************************************************************
- *              glTexCoord4sv (OPENGL32.@)
- */
 void WINAPI glTexCoord4sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glTexCoord4sv( v );
 }
 
-/***********************************************************************
- *              glTexCoordPointer (OPENGL32.@)
- */
 void WINAPI glTexCoordPointer( GLint size, GLenum type, GLsizei stride, const void* pointer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
   funcs->gl.p_glTexCoordPointer( size, type, stride, pointer );
 }
 
-/***********************************************************************
- *              glTexEnvf (OPENGL32.@)
- */
 void WINAPI glTexEnvf( GLenum target, GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %f)\n", target, pname, param );
   funcs->gl.p_glTexEnvf( target, pname, param );
 }
 
-/***********************************************************************
- *              glTexEnvfv (OPENGL32.@)
- */
 void WINAPI glTexEnvfv( GLenum target, GLenum pname, const GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
   funcs->gl.p_glTexEnvfv( target, pname, params );
 }
 
-/***********************************************************************
- *              glTexEnvi (OPENGL32.@)
- */
 void WINAPI glTexEnvi( GLenum target, GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", target, pname, param );
   funcs->gl.p_glTexEnvi( target, pname, param );
 }
 
-/***********************************************************************
- *              glTexEnviv (OPENGL32.@)
- */
 void WINAPI glTexEnviv( GLenum target, GLenum pname, const GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
   funcs->gl.p_glTexEnviv( target, pname, params );
 }
 
-/***********************************************************************
- *              glTexGend (OPENGL32.@)
- */
 void WINAPI glTexGend( GLenum coord, GLenum pname, GLdouble param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %f)\n", coord, pname, param );
   funcs->gl.p_glTexGend( coord, pname, param );
 }
 
-/***********************************************************************
- *              glTexGendv (OPENGL32.@)
- */
 void WINAPI glTexGendv( GLenum coord, GLenum pname, const GLdouble* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", coord, pname, params );
   funcs->gl.p_glTexGendv( coord, pname, params );
 }
 
-/***********************************************************************
- *              glTexGenf (OPENGL32.@)
- */
 void WINAPI glTexGenf( GLenum coord, GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %f)\n", coord, pname, param );
   funcs->gl.p_glTexGenf( coord, pname, param );
 }
 
-/***********************************************************************
- *              glTexGenfv (OPENGL32.@)
- */
 void WINAPI glTexGenfv( GLenum coord, GLenum pname, const GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", coord, pname, params );
   funcs->gl.p_glTexGenfv( coord, pname, params );
 }
 
-/***********************************************************************
- *              glTexGeni (OPENGL32.@)
- */
 void WINAPI glTexGeni( GLenum coord, GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", coord, pname, param );
   funcs->gl.p_glTexGeni( coord, pname, param );
 }
 
-/***********************************************************************
- *              glTexGeniv (OPENGL32.@)
- */
 void WINAPI glTexGeniv( GLenum coord, GLenum pname, const GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", coord, pname, params );
   funcs->gl.p_glTexGeniv( coord, pname, params );
 }
 
-/***********************************************************************
- *              glTexImage1D (OPENGL32.@)
- */
 void WINAPI glTexImage1D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, border, format, type, pixels );
   funcs->gl.p_glTexImage1D( target, level, internalformat, width, border, format, type, pixels );
 }
 
-/***********************************************************************
- *              glTexImage2D (OPENGL32.@)
- */
 void WINAPI glTexImage2D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, internalformat, width, height, border, format, type, pixels );
   funcs->gl.p_glTexImage2D( target, level, internalformat, width, height, border, format, type, pixels );
 }
 
-/***********************************************************************
- *              glTexParameterf (OPENGL32.@)
- */
 void WINAPI glTexParameterf( GLenum target, GLenum pname, GLfloat param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %f)\n", target, pname, param );
   funcs->gl.p_glTexParameterf( target, pname, param );
 }
 
-/***********************************************************************
- *              glTexParameterfv (OPENGL32.@)
- */
 void WINAPI glTexParameterfv( GLenum target, GLenum pname, const GLfloat* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
   funcs->gl.p_glTexParameterfv( target, pname, params );
 }
 
-/***********************************************************************
- *              glTexParameteri (OPENGL32.@)
- */
 void WINAPI glTexParameteri( GLenum target, GLenum pname, GLint param ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", target, pname, param );
   funcs->gl.p_glTexParameteri( target, pname, param );
 }
 
-/***********************************************************************
- *              glTexParameteriv (OPENGL32.@)
- */
 void WINAPI glTexParameteriv( GLenum target, GLenum pname, const GLint* params ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %p)\n", target, pname, params );
   funcs->gl.p_glTexParameteriv( target, pname, params );
 }
 
-/***********************************************************************
- *              glTexSubImage1D (OPENGL32.@)
- */
 void WINAPI glTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, width, format, type, pixels );
   funcs->gl.p_glTexSubImage1D( target, level, xoffset, width, format, type, pixels );
 }
 
-/***********************************************************************
- *              glTexSubImage2D (OPENGL32.@)
- */
 void WINAPI glTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d, %d, %d, %d, %d, %p)\n", target, level, xoffset, yoffset, width, height, format, type, pixels );
   funcs->gl.p_glTexSubImage2D( target, level, xoffset, yoffset, width, height, format, type, pixels );
 }
 
-/***********************************************************************
- *              glTranslated (OPENGL32.@)
- */
 void WINAPI glTranslated( GLdouble x, GLdouble y, GLdouble z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", x, y, z );
   funcs->gl.p_glTranslated( x, y, z );
 }
 
-/***********************************************************************
- *              glTranslatef (OPENGL32.@)
- */
 void WINAPI glTranslatef( GLfloat x, GLfloat y, GLfloat z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", x, y, z );
   funcs->gl.p_glTranslatef( x, y, z );
 }
 
-/***********************************************************************
- *              glVertex2d (OPENGL32.@)
- */
 void WINAPI glVertex2d( GLdouble x, GLdouble y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", x, y );
   funcs->gl.p_glVertex2d( x, y );
 }
 
-/***********************************************************************
- *              glVertex2dv (OPENGL32.@)
- */
 void WINAPI glVertex2dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex2dv( v );
 }
 
-/***********************************************************************
- *              glVertex2f (OPENGL32.@)
- */
 void WINAPI glVertex2f( GLfloat x, GLfloat y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f)\n", x, y );
   funcs->gl.p_glVertex2f( x, y );
 }
 
-/***********************************************************************
- *              glVertex2fv (OPENGL32.@)
- */
 void WINAPI glVertex2fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex2fv( v );
 }
 
-/***********************************************************************
- *              glVertex2i (OPENGL32.@)
- */
 void WINAPI glVertex2i( GLint x, GLint y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", x, y );
   funcs->gl.p_glVertex2i( x, y );
 }
 
-/***********************************************************************
- *              glVertex2iv (OPENGL32.@)
- */
 void WINAPI glVertex2iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex2iv( v );
 }
 
-/***********************************************************************
- *              glVertex2s (OPENGL32.@)
- */
 void WINAPI glVertex2s( GLshort x, GLshort y ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d)\n", x, y );
   funcs->gl.p_glVertex2s( x, y );
 }
 
-/***********************************************************************
- *              glVertex2sv (OPENGL32.@)
- */
 void WINAPI glVertex2sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex2sv( v );
 }
 
-/***********************************************************************
- *              glVertex3d (OPENGL32.@)
- */
 void WINAPI glVertex3d( GLdouble x, GLdouble y, GLdouble z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", x, y, z );
   funcs->gl.p_glVertex3d( x, y, z );
 }
 
-/***********************************************************************
- *              glVertex3dv (OPENGL32.@)
- */
 void WINAPI glVertex3dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex3dv( v );
 }
 
-/***********************************************************************
- *              glVertex3f (OPENGL32.@)
- */
 void WINAPI glVertex3f( GLfloat x, GLfloat y, GLfloat z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f)\n", x, y, z );
   funcs->gl.p_glVertex3f( x, y, z );
 }
 
-/***********************************************************************
- *              glVertex3fv (OPENGL32.@)
- */
 void WINAPI glVertex3fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex3fv( v );
 }
 
-/***********************************************************************
- *              glVertex3i (OPENGL32.@)
- */
 void WINAPI glVertex3i( GLint x, GLint y, GLint z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", x, y, z );
   funcs->gl.p_glVertex3i( x, y, z );
 }
 
-/***********************************************************************
- *              glVertex3iv (OPENGL32.@)
- */
 void WINAPI glVertex3iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex3iv( v );
 }
 
-/***********************************************************************
- *              glVertex3s (OPENGL32.@)
- */
 void WINAPI glVertex3s( GLshort x, GLshort y, GLshort z ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d)\n", x, y, z );
   funcs->gl.p_glVertex3s( x, y, z );
 }
 
-/***********************************************************************
- *              glVertex3sv (OPENGL32.@)
- */
 void WINAPI glVertex3sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex3sv( v );
 }
 
-/***********************************************************************
- *              glVertex4d (OPENGL32.@)
- */
 void WINAPI glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", x, y, z, w );
   funcs->gl.p_glVertex4d( x, y, z, w );
 }
 
-/***********************************************************************
- *              glVertex4dv (OPENGL32.@)
- */
 void WINAPI glVertex4dv( const GLdouble* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex4dv( v );
 }
 
-/***********************************************************************
- *              glVertex4f (OPENGL32.@)
- */
 void WINAPI glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%f, %f, %f, %f)\n", x, y, z, w );
   funcs->gl.p_glVertex4f( x, y, z, w );
 }
 
-/***********************************************************************
- *              glVertex4fv (OPENGL32.@)
- */
 void WINAPI glVertex4fv( const GLfloat* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex4fv( v );
 }
 
-/***********************************************************************
- *              glVertex4i (OPENGL32.@)
- */
 void WINAPI glVertex4i( GLint x, GLint y, GLint z, GLint w ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
   funcs->gl.p_glVertex4i( x, y, z, w );
 }
 
-/***********************************************************************
- *              glVertex4iv (OPENGL32.@)
- */
 void WINAPI glVertex4iv( const GLint* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex4iv( v );
 }
 
-/***********************************************************************
- *              glVertex4s (OPENGL32.@)
- */
 void WINAPI glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", x, y, z, w );
   funcs->gl.p_glVertex4s( x, y, z, w );
 }
 
-/***********************************************************************
- *              glVertex4sv (OPENGL32.@)
- */
 void WINAPI glVertex4sv( const GLshort* v ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%p)\n", v );
   funcs->gl.p_glVertex4sv( v );
 }
 
-/***********************************************************************
- *              glVertexPointer (OPENGL32.@)
- */
 void WINAPI glVertexPointer( GLint size, GLenum type, GLsizei stride, const void* pointer ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %p)\n", size, type, stride, pointer );
   funcs->gl.p_glVertexPointer( size, type, stride, pointer );
 }
 
-/***********************************************************************
- *              glViewport (OPENGL32.@)
- */
 void WINAPI glViewport( GLint x, GLint y, GLsizei width, GLsizei height ) {
   const struct opengl_funcs *funcs = NtCurrentTeb()->glTable;
   TRACE("(%d, %d, %d, %d)\n", x, y, width, height );
@@ -3363,6 +2361,7 @@ static void null_glVertex4sv( const GLshort* v ) { }
 static void null_glVertexPointer( GLint size, GLenum type, GLsizei stride, const void* pointer ) { }
 static void null_glViewport( GLint x, GLint y, GLsizei width, GLsizei height ) { }
 static void null_glAccumxOES( GLenum op, GLfixed value ) { }
+static GLboolean null_glAcquireKeyedMutexWin32EXT( GLuint memory, GLuint64 key, GLuint timeout ) { return 0; }
 static void null_glActiveProgramEXT( GLuint program ) { }
 static void null_glActiveShaderProgram( GLuint pipeline, GLuint program ) { }
 static void null_glActiveStencilFaceEXT( GLenum face ) { }
@@ -3373,6 +2372,7 @@ static void null_glAlphaFragmentOp1ATI( GLenum op, GLuint dst, GLuint dstMod, GL
 static void null_glAlphaFragmentOp2ATI( GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod ) { }
 static void null_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 ) { }
 static void null_glAlphaFuncxOES( GLenum func, GLfixed ref ) { }
+static void null_glAlphaToCoverageDitherControlNV( GLenum mode ) { }
 static void null_glApplyFramebufferAttachmentCMAAINTEL( void ) { }
 static void null_glApplyTextureEXT( GLenum mode ) { }
 static GLboolean null_glAreProgramsResidentNV( GLsizei n, const GLuint* programs, GLboolean* residences ) { return 0; }
@@ -3492,6 +2492,8 @@ static void null_glBufferPageCommitmentARB( GLenum target, GLintptr offset, GLsi
 static void null_glBufferParameteriAPPLE( GLenum target, GLenum pname, GLint param ) { }
 static GLuint null_glBufferRegionEnabled( void ) { return 0; }
 static void null_glBufferStorage( GLenum target, GLsizeiptr size, const void* data, GLbitfield flags ) { }
+static void null_glBufferStorageExternalEXT( GLenum target, GLintptr offset, GLsizeiptr size, void * clientBuffer, GLbitfield flags ) { }
+static void null_glBufferStorageMemEXT( GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset ) { }
 static void null_glBufferSubData( GLenum target, GLintptr offset, GLsizeiptr size, const void* data ) { }
 static void null_glBufferSubDataARB( GLenum target, GLintptrARB offset, GLsizeiptrARB size, const void* data ) { }
 static void null_glCallCommandListNV( GLuint list ) { }
@@ -3611,6 +2613,7 @@ static void null_glCompressedTextureSubImage2DEXT( GLuint texture, GLenum target
 static void null_glCompressedTextureSubImage3D( GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data ) { }
 static void null_glCompressedTextureSubImage3DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* bits ) { }
 static void null_glConservativeRasterParameterfNV( GLenum pname, GLfloat value ) { }
+static void null_glConservativeRasterParameteriNV( GLenum pname, GLint param ) { }
 static void null_glConvolutionFilter1D( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* image ) { }
 static void null_glConvolutionFilter1DEXT( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* image ) { }
 static void null_glConvolutionFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* image ) { }
@@ -3666,6 +2669,7 @@ static void null_glCoverageModulationTableNV( GLsizei n, const GLfloat* v ) { }
 static void null_glCreateBuffers( GLsizei n, GLuint* buffers ) { }
 static void null_glCreateCommandListsNV( GLsizei n, GLuint* lists ) { }
 static void null_glCreateFramebuffers( GLsizei n, GLuint* framebuffers ) { }
+static void null_glCreateMemoryObjectsEXT( GLsizei n, GLuint* memoryObjects ) { }
 static void null_glCreatePerfQueryINTEL( GLuint queryId, GLuint* queryHandle ) { }
 static GLuint null_glCreateProgram( void ) { return 0; }
 static GLhandleARB null_glCreateProgramObjectARB( void ) { return 0; }
@@ -3707,6 +2711,7 @@ static void null_glDeleteFencesNV( GLsizei n, const GLuint* fences ) { }
 static void null_glDeleteFragmentShaderATI( GLuint id ) { }
 static void null_glDeleteFramebuffers( GLsizei n, const GLuint* framebuffers ) { }
 static void null_glDeleteFramebuffersEXT( GLsizei n, const GLuint* framebuffers ) { }
+static void null_glDeleteMemoryObjectsEXT( GLsizei n, const GLuint* memoryObjects ) { }
 static void null_glDeleteNamedStringARB( GLint namelen, const GLchar* name ) { }
 static void null_glDeleteNamesAMD( GLenum identifier, GLuint num, const GLuint* names ) { }
 static void null_glDeleteObjectARB( GLhandleARB obj ) { }
@@ -3721,9 +2726,11 @@ static void null_glDeleteProgramsARB( GLsizei n, const GLuint* programs ) { }
 static void null_glDeleteProgramsNV( GLsizei n, const GLuint* programs ) { }
 static void null_glDeleteQueries( GLsizei n, const GLuint* ids ) { }
 static void null_glDeleteQueriesARB( GLsizei n, const GLuint* ids ) { }
+static void null_glDeleteQueryResourceTagNV( GLsizei n, const GLint* tagIds ) { }
 static void null_glDeleteRenderbuffers( GLsizei n, const GLuint* renderbuffers ) { }
 static void null_glDeleteRenderbuffersEXT( GLsizei n, const GLuint* renderbuffers ) { }
 static void null_glDeleteSamplers( GLsizei count, const GLuint* samplers ) { }
+static void null_glDeleteSemaphoresEXT( GLsizei n, const GLuint* semaphores ) { }
 static void null_glDeleteShader( GLuint shader ) { }
 static void null_glDeleteStatesNV( GLsizei n, const GLuint* states ) { }
 static void null_glDeleteSync( GLsync sync ) { }
@@ -3794,6 +2801,7 @@ static void null_glDrawTransformFeedbackInstanced( GLenum mode, GLuint id, GLsiz
 static void null_glDrawTransformFeedbackNV( GLenum mode, GLuint id ) { }
 static void null_glDrawTransformFeedbackStream( GLenum mode, GLuint id, GLuint stream ) { }
 static void null_glDrawTransformFeedbackStreamInstanced( GLenum mode, GLuint id, GLuint stream, GLsizei instancecount ) { }
+static void null_glDrawVkImageNV( GLuint64 vkImage, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1 ) { }
 static void null_glEdgeFlagFormatNV( GLsizei stride ) { }
 static void null_glEdgeFlagPointerEXT( GLsizei stride, GLsizei count, const GLboolean* pointer ) { }
 static void null_glEdgeFlagPointerListIBM( GLint stride, const GLboolean** pointer, GLint ptrstride ) { }
@@ -3891,6 +2899,7 @@ static void null_glFramebufferRenderbuffer( GLenum target, GLenum attachment, GL
 static void null_glFramebufferRenderbufferEXT( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) { }
 static void null_glFramebufferSampleLocationsfvARB( GLenum target, GLuint start, GLsizei count, const GLfloat* v ) { }
 static void null_glFramebufferSampleLocationsfvNV( GLenum target, GLuint start, GLsizei count, const GLfloat* v ) { }
+static void null_glFramebufferSamplePositionsfvAMD( GLenum target, GLuint numsamples, GLuint pixelindex, const GLfloat* values ) { }
 static void null_glFramebufferTexture( GLenum target, GLenum attachment, GLuint texture, GLint level ) { }
 static void null_glFramebufferTexture1D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) { }
 static void null_glFramebufferTexture1DEXT( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) { }
@@ -3926,9 +2935,11 @@ static void null_glGenProgramsARB( GLsizei n, GLuint* programs ) { }
 static void null_glGenProgramsNV( GLsizei n, GLuint* programs ) { }
 static void null_glGenQueries( GLsizei n, GLuint* ids ) { }
 static void null_glGenQueriesARB( GLsizei n, GLuint* ids ) { }
+static void null_glGenQueryResourceTagNV( GLsizei n, GLint* tagIds ) { }
 static void null_glGenRenderbuffers( GLsizei n, GLuint* renderbuffers ) { }
 static void null_glGenRenderbuffersEXT( GLsizei n, GLuint* renderbuffers ) { }
 static void null_glGenSamplers( GLsizei count, GLuint* samplers ) { }
+static void null_glGenSemaphoresEXT( GLsizei n, GLuint* semaphores ) { }
 static GLuint null_glGenSymbolsEXT( GLenum datatype, GLenum storagetype, GLenum range, GLuint components ) { return 0; }
 static void null_glGenTexturesEXT( GLsizei n, GLuint* textures ) { }
 static void null_glGenTransformFeedbacks( GLsizei n, GLuint* ids ) { }
@@ -4026,6 +3037,7 @@ static void null_glGetFragmentMaterialfvSGIX( GLenum face, GLenum pname, GLfloat
 static void null_glGetFragmentMaterialivSGIX( GLenum face, GLenum pname, GLint* params ) { }
 static void null_glGetFramebufferAttachmentParameteriv( GLenum target, GLenum attachment, GLenum pname, GLint* params ) { }
 static void null_glGetFramebufferAttachmentParameterivEXT( GLenum target, GLenum attachment, GLenum pname, GLint* params ) { }
+static void null_glGetFramebufferParameterfvAMD( GLenum target, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values ) { }
 static void null_glGetFramebufferParameteriv( GLenum target, GLenum pname, GLint* params ) { }
 static void null_glGetFramebufferParameterivEXT( GLuint framebuffer, GLenum pname, GLint* params ) { }
 static GLenum null_glGetGraphicsResetStatus( void ) { return 0; }
@@ -4069,6 +3081,7 @@ static void null_glGetMapParameterfvNV( GLenum target, GLenum pname, GLfloat* pa
 static void null_glGetMapParameterivNV( GLenum target, GLenum pname, GLint* params ) { }
 static void null_glGetMapxvOES( GLenum target, GLenum query, GLfixed* v ) { }
 static void null_glGetMaterialxOES( GLenum face, GLenum pname, GLfixed param ) { }
+static void null_glGetMemoryObjectParameterivEXT( GLuint memoryObject, GLenum pname, GLint* params ) { }
 static void null_glGetMinmax( GLenum target, GLboolean reset, GLenum format, GLenum type, void* values ) { }
 static void null_glGetMinmaxEXT( GLenum target, GLboolean reset, GLenum format, GLenum type, void* values ) { }
 static void null_glGetMinmaxParameterfv( GLenum target, GLenum pname, GLfloat* params ) { }
@@ -4099,6 +3112,7 @@ static void null_glGetNamedBufferSubData( GLuint buffer, GLintptr offset, GLsize
 static void null_glGetNamedBufferSubDataEXT( GLuint buffer, GLintptr offset, GLsizeiptr size, void* data ) { }
 static void null_glGetNamedFramebufferAttachmentParameteriv( GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params ) { }
 static void null_glGetNamedFramebufferAttachmentParameterivEXT( GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params ) { }
+static void null_glGetNamedFramebufferParameterfvAMD( GLuint framebuffer, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values ) { }
 static void null_glGetNamedFramebufferParameteriv( GLuint framebuffer, GLenum pname, GLint* param ) { }
 static void null_glGetNamedFramebufferParameterivEXT( GLuint framebuffer, GLenum pname, GLint* params ) { }
 static void null_glGetNamedProgramLocalParameterIivEXT( GLuint program, GLenum target, GLuint index, GLint* params ) { }
@@ -4204,6 +3218,7 @@ static void null_glGetSamplerParameterIiv( GLuint sampler, GLenum pname, GLint*
 static void null_glGetSamplerParameterIuiv( GLuint sampler, GLenum pname, GLuint* params ) { }
 static void null_glGetSamplerParameterfv( GLuint sampler, GLenum pname, GLfloat* params ) { }
 static void null_glGetSamplerParameteriv( GLuint sampler, GLenum pname, GLint* params ) { }
+static void null_glGetSemaphoreParameterui64vEXT( GLuint semaphore, GLenum pname, GLuint64* params ) { }
 static void null_glGetSeparableFilter( GLenum target, GLenum format, GLenum type, void* row, void* column, void* span ) { }
 static void null_glGetSeparableFilterEXT( GLenum target, GLenum format, GLenum type, void* row, void* column, void* span ) { }
 static void null_glGetShaderInfoLog( GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog ) { }
@@ -4273,6 +3288,8 @@ static void null_glGetUniformui64vARB( GLuint program, GLint location, GLuint64*
 static void null_glGetUniformui64vNV( GLuint program, GLint location, GLuint64EXT* params ) { }
 static void null_glGetUniformuiv( GLuint program, GLint location, GLuint* params ) { }
 static void null_glGetUniformuivEXT( GLuint program, GLint location, GLuint* params ) { }
+static void null_glGetUnsignedBytei_vEXT( GLenum target, GLuint index, GLubyte* data ) { }
+static void null_glGetUnsignedBytevEXT( GLenum pname, GLubyte* data ) { }
 static void null_glGetVariantArrayObjectfvATI( GLuint id, GLenum pname, GLfloat* params ) { }
 static void null_glGetVariantArrayObjectivATI( GLuint id, GLenum pname, GLint* params ) { }
 static void null_glGetVariantBooleanvEXT( GLuint id, GLenum value, GLboolean* data ) { }
@@ -4318,6 +3335,7 @@ static void null_glGetVideoi64vNV( GLuint video_slot, GLenum pname, GLint64EXT*
 static void null_glGetVideoivNV( GLuint video_slot, GLenum pname, GLint* params ) { }
 static void null_glGetVideoui64vNV( GLuint video_slot, GLenum pname, GLuint64EXT* params ) { }
 static void null_glGetVideouivNV( GLuint video_slot, GLenum pname, GLuint* params ) { }
+static void * null_glGetVkProcAddrNV( const GLchar* name ) { return 0; }
 static void null_glGetnColorTable( GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table ) { }
 static void null_glGetnColorTableARB( GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table ) { }
 static void null_glGetnCompressedTexImage( GLenum target, GLint lod, GLsizei bufSize, void* pixels ) { }
@@ -4372,6 +3390,12 @@ static void null_glImageTransformParameterfHP( GLenum target, GLenum pname, GLfl
 static void null_glImageTransformParameterfvHP( GLenum target, GLenum pname, const GLfloat* params ) { }
 static void null_glImageTransformParameteriHP( GLenum target, GLenum pname, GLint param ) { }
 static void null_glImageTransformParameterivHP( GLenum target, GLenum pname, const GLint* params ) { }
+static void null_glImportMemoryFdEXT( GLuint memory, GLuint64 size, GLenum handleType, GLint fd ) { }
+static void null_glImportMemoryWin32HandleEXT( GLuint memory, GLuint64 size, GLenum handleType, void* handle ) { }
+static void null_glImportMemoryWin32NameEXT( GLuint memory, GLuint64 size, GLenum handleType, const void* name ) { }
+static void null_glImportSemaphoreFdEXT( GLuint semaphore, GLenum handleType, GLint fd ) { }
+static void null_glImportSemaphoreWin32HandleEXT( GLuint semaphore, GLenum handleType, void* handle ) { }
+static void null_glImportSemaphoreWin32NameEXT( GLuint semaphore, GLenum handleType, const void* name ) { }
 static GLsync null_glImportSyncEXT( GLenum external_sync_type, GLintptr external_sync, GLbitfield flags ) { return 0; }
 static void null_glIndexFormatNV( GLenum type, GLsizei stride ) { }
 static void null_glIndexFuncEXT( GLenum func, GLclampf ref ) { }
@@ -4405,6 +3429,7 @@ static GLboolean null_glIsFramebuffer( GLuint framebuffer ) { return 0; }
 static GLboolean null_glIsFramebufferEXT( GLuint framebuffer ) { return 0; }
 static GLboolean null_glIsImageHandleResidentARB( GLuint64 handle ) { return 0; }
 static GLboolean null_glIsImageHandleResidentNV( GLuint64 handle ) { return 0; }
+static GLboolean null_glIsMemoryObjectEXT( GLuint memoryObject ) { return 0; }
 static GLboolean null_glIsNameAMD( GLenum identifier, GLuint name ) { return 0; }
 static GLboolean null_glIsNamedBufferResidentNV( GLuint buffer ) { return 0; }
 static GLboolean null_glIsNamedStringARB( GLint namelen, const GLchar* name ) { return 0; }
@@ -4422,6 +3447,7 @@ static GLboolean null_glIsQueryARB( GLuint id ) { return 0; }
 static GLboolean null_glIsRenderbuffer( GLuint renderbuffer ) { return 0; }
 static GLboolean null_glIsRenderbufferEXT( GLuint renderbuffer ) { return 0; }
 static GLboolean null_glIsSampler( GLuint sampler ) { return 0; }
+static GLboolean null_glIsSemaphoreEXT( GLuint semaphore ) { return 0; }
 static GLboolean null_glIsShader( GLuint shader ) { return 0; }
 static GLboolean null_glIsStateNV( GLuint state ) { return 0; }
 static GLboolean null_glIsSync( GLsync sync ) { return 0; }
@@ -4434,6 +3460,9 @@ static GLboolean null_glIsVariantEnabledEXT( GLuint id, GLenum cap ) { return 0;
 static GLboolean null_glIsVertexArray( GLuint array ) { return 0; }
 static GLboolean null_glIsVertexArrayAPPLE( GLuint array ) { return 0; }
 static GLboolean null_glIsVertexAttribEnabledAPPLE( GLuint index, GLenum pname ) { return 0; }
+static void null_glLGPUCopyImageSubDataNVX( GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth ) { }
+static void null_glLGPUInterlockNVX( void ) { }
+static void null_glLGPUNamedBufferSubDataNVX( GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data ) { }
 static void null_glLabelObjectEXT( GLenum type, GLuint object, GLsizei length, const GLchar* label ) { }
 static void null_glLightEnviSGIX( GLenum pname, GLint param ) { }
 static void null_glLightModelxOES( GLenum pname, GLfixed param ) { }
@@ -4523,9 +3552,11 @@ static void null_glMatrixScalefEXT( GLenum mode, GLfloat x, GLfloat y, GLfloat z
 static void null_glMatrixTranslatedEXT( GLenum mode, GLdouble x, GLdouble y, GLdouble z ) { }
 static void null_glMatrixTranslatefEXT( GLenum mode, GLfloat x, GLfloat y, GLfloat z ) { }
 static void null_glMaxShaderCompilerThreadsARB( GLuint count ) { }
+static void null_glMaxShaderCompilerThreadsKHR( GLuint count ) { }
 static void null_glMemoryBarrier( GLbitfield barriers ) { }
 static void null_glMemoryBarrierByRegion( GLbitfield barriers ) { }
 static void null_glMemoryBarrierEXT( GLbitfield barriers ) { }
+static void null_glMemoryObjectParameterivEXT( GLuint memoryObject, GLenum pname, const GLint* params ) { }
 static void null_glMinSampleShading( GLfloat value ) { }
 static void null_glMinSampleShadingARB( GLfloat value ) { }
 static void null_glMinmax( GLenum target, GLenum internalformat, GLboolean sink ) { }
@@ -4542,7 +3573,8 @@ static void null_glMultiDrawArraysIndirect( GLenum mode, const void* indirect, G
 static void null_glMultiDrawArraysIndirectAMD( GLenum mode, const void* indirect, GLsizei primcount, GLsizei stride ) { }
 static void null_glMultiDrawArraysIndirectBindlessCountNV( GLenum mode, const void* indirect, GLsizei drawCount, GLsizei maxDrawCount, GLsizei stride, GLint vertexBufferCount ) { }
 static void null_glMultiDrawArraysIndirectBindlessNV( GLenum mode, const void* indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount ) { }
-static void null_glMultiDrawArraysIndirectCountARB( GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) { }
+static void null_glMultiDrawArraysIndirectCount( GLenum mode, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) { }
+static void null_glMultiDrawArraysIndirectCountARB( GLenum mode, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) { }
 static void null_glMultiDrawElementArrayAPPLE( GLenum mode, const GLint* first, const GLsizei* count, GLsizei primcount ) { }
 static void null_glMultiDrawElements( GLenum mode, const GLsizei* count, GLenum type, const void*const* indices, GLsizei drawcount ) { }
 static void null_glMultiDrawElementsBaseVertex( GLenum mode, const GLsizei* count, GLenum type, const void*const* indices, GLsizei drawcount, const GLint* basevertex ) { }
@@ -4551,7 +3583,8 @@ static void null_glMultiDrawElementsIndirect( GLenum mode, GLenum type, const vo
 static void null_glMultiDrawElementsIndirectAMD( GLenum mode, GLenum type, const void* indirect, GLsizei primcount, GLsizei stride ) { }
 static void null_glMultiDrawElementsIndirectBindlessCountNV( GLenum mode, GLenum type, const void* indirect, GLsizei drawCount, GLsizei maxDrawCount, GLsizei stride, GLint vertexBufferCount ) { }
 static void null_glMultiDrawElementsIndirectBindlessNV( GLenum mode, GLenum type, const void* indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount ) { }
-static void null_glMultiDrawElementsIndirectCountARB( GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) { }
+static void null_glMultiDrawElementsIndirectCount( GLenum mode, GLenum type, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) { }
+static void null_glMultiDrawElementsIndirectCountARB( GLenum mode, GLenum type, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride ) { }
 static void null_glMultiDrawRangeElementArrayAPPLE( GLenum mode, GLuint start, GLuint end, const GLint* first, const GLsizei* count, GLsizei primcount ) { }
 static void null_glMultiModeDrawArraysIBM( const GLenum* mode, const GLint* first, const GLsizei* count, GLsizei primcount, GLint modestride ) { }
 static void null_glMultiModeDrawElementsIBM( const GLenum* mode, const GLsizei* count, GLenum type, const void*const* indices, GLsizei primcount, GLint modestride ) { }
@@ -4709,12 +3742,25 @@ static void null_glMultiTexRenderbufferEXT( GLenum texunit, GLenum target, GLuin
 static void null_glMultiTexSubImage1DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels ) { }
 static void null_glMultiTexSubImage2DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels ) { }
 static void null_glMultiTexSubImage3DEXT( GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels ) { }
+static void null_glMulticastBarrierNV( void ) { }
+static void null_glMulticastBlitFramebufferNV( GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter ) { }
+static void null_glMulticastBufferSubDataNV( GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const GLvoid* data ) { }
+static void null_glMulticastCopyBufferSubDataNV( GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size ) { }
+static void null_glMulticastCopyImageSubDataNV( GLuint srcGpu, GLbitfield dstGpuMask, 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 ) { }
+static void null_glMulticastFramebufferSampleLocationsfvNV( GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v ) { }
+static void null_glMulticastGetQueryObjecti64vNV( GLuint gpu, GLuint id, GLenum pname, GLint64* params ) { }
+static void null_glMulticastGetQueryObjectivNV( GLuint gpu, GLuint id, GLenum pname, GLint* params ) { }
+static void null_glMulticastGetQueryObjectui64vNV( GLuint gpu, GLuint id, GLenum pname, GLuint64* params ) { }
+static void null_glMulticastGetQueryObjectuivNV( GLuint gpu, GLuint id, GLenum pname, GLuint* params ) { }
+static void null_glMulticastWaitSyncNV( GLuint signalGpu, GLbitfield waitGpuMask ) { }
 static void null_glNamedBufferData( GLuint buffer, GLsizeiptr size, const void* data, GLenum usage ) { }
 static void null_glNamedBufferDataEXT( GLuint buffer, GLsizeiptr size, const void* data, GLenum usage ) { }
 static void null_glNamedBufferPageCommitmentARB( GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit ) { }
 static void null_glNamedBufferPageCommitmentEXT( GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit ) { }
 static void null_glNamedBufferStorage( GLuint buffer, GLsizeiptr size, const void* data, GLbitfield flags ) { }
 static void null_glNamedBufferStorageEXT( GLuint buffer, GLsizeiptr size, const void* data, GLbitfield flags ) { }
+static void null_glNamedBufferStorageExternalEXT( GLuint buffer, GLintptr offset, GLsizeiptr size, void * clientBuffer, GLbitfield flags ) { }
+static void null_glNamedBufferStorageMemEXT( GLuint buffer, GLsizeiptr size, GLuint memory, GLuint64 offset ) { }
 static void null_glNamedBufferSubData( GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data ) { }
 static void null_glNamedBufferSubDataEXT( GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data ) { }
 static void null_glNamedCopyBufferSubDataEXT( GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size ) { }
@@ -4727,6 +3773,7 @@ static void null_glNamedFramebufferRenderbuffer( GLuint framebuffer, GLenum atta
 static void null_glNamedFramebufferRenderbufferEXT( GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) { }
 static void null_glNamedFramebufferSampleLocationsfvARB( GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v ) { }
 static void null_glNamedFramebufferSampleLocationsfvNV( GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v ) { }
+static void null_glNamedFramebufferSamplePositionsfvAMD( GLuint framebuffer, GLuint numsamples, GLuint pixelindex, const GLfloat* values ) { }
 static void null_glNamedFramebufferTexture( GLuint framebuffer, GLenum attachment, GLuint texture, GLint level ) { }
 static void null_glNamedFramebufferTexture1DEXT( GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) { }
 static void null_glNamedFramebufferTexture2DEXT( GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) { }
@@ -4843,6 +3890,7 @@ static void null_glPointParameterxvOES( GLenum pname, const GLfixed* params ) {
 static void null_glPointSizexOES( GLfixed size ) { }
 static GLint null_glPollAsyncSGIX( GLuint* markerp ) { return 0; }
 static GLint null_glPollInstrumentsSGIX( GLint* marker_p ) { return 0; }
+static void null_glPolygonOffsetClamp( GLfloat factor, GLfloat units, GLfloat clamp ) { }
 static void null_glPolygonOffsetClampEXT( GLfloat factor, GLfloat units, GLfloat clamp ) { }
 static void null_glPolygonOffsetEXT( GLfloat factor, GLfloat bias ) { }
 static void null_glPolygonOffsetxOES( GLfixed factor, GLfixed units ) { }
@@ -5045,6 +4093,8 @@ static void null_glPushGroupMarkerEXT( GLsizei length, const GLchar* marker ) {
 static void null_glQueryCounter( GLuint id, GLenum target ) { }
 static GLbitfield null_glQueryMatrixxOES( GLfixed* mantissa, GLint* exponent ) { return 0; }
 static void null_glQueryObjectParameteruiAMD( GLenum target, GLuint id, GLenum pname, GLuint param ) { }
+static GLint null_glQueryResourceNV( GLenum queryType, GLint tagId, GLuint bufSize, GLint* buffer ) { return 0; }
+static void null_glQueryResourceTagNV( GLint tagId, const GLchar* tagString ) { }
 static void null_glRasterPos2xOES( GLfixed x, GLfixed y ) { }
 static void null_glRasterPos2xvOES( const GLfixed* coords ) { }
 static void null_glRasterPos3xOES( GLfixed x, GLfixed y, GLfixed z ) { }
@@ -5059,7 +4109,9 @@ static void null_glReadnPixelsARB( GLint x, GLint y, GLsizei width, GLsizei heig
 static void null_glRectxOES( GLfixed x1, GLfixed y1, GLfixed x2, GLfixed y2 ) { }
 static void null_glRectxvOES( const GLfixed* v1, const GLfixed* v2 ) { }
 static void null_glReferencePlaneSGIX( const GLdouble* equation ) { }
+static GLboolean null_glReleaseKeyedMutexWin32EXT( GLuint memory, GLuint64 key ) { return 0; }
 static void null_glReleaseShaderCompiler( void ) { }
+static void null_glRenderGpuMaskNV( GLbitfield mask ) { }
 static void null_glRenderbufferStorage( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) { }
 static void null_glRenderbufferStorageEXT( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) { }
 static void null_glRenderbufferStorageMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) { }
@@ -5160,6 +4212,7 @@ static void null_glSecondaryColorPointerListIBM( GLint size, GLenum type, GLint
 static void null_glSelectPerfMonitorCountersAMD( GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList ) { }
 static void null_glSelectTextureCoordSetSGIS( GLenum target ) { }
 static void null_glSelectTextureSGIS( GLenum target ) { }
+static void null_glSemaphoreParameterui64vEXT( GLuint semaphore, GLenum pname, const GLuint64* params ) { }
 static void null_glSeparableFilter2D( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* row, const void* column ) { }
 static void null_glSeparableFilter2DEXT( GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* row, const void* column ) { }
 static void null_glSetFenceAPPLE( GLuint fence ) { }
@@ -5176,6 +4229,11 @@ static void null_glShaderSource( GLuint shader, GLsizei count, const GLchar*cons
 static void null_glShaderSourceARB( GLhandleARB shaderObj, GLsizei count, const GLcharARB** string, const GLint* length ) { }
 static void null_glShaderStorageBlockBinding( GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding ) { }
 static void null_glSharpenTexFuncSGIS( GLenum target, GLsizei n, const GLfloat* points ) { }
+static void null_glSignalSemaphoreEXT( GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint* textures, const GLenum* dstLayouts ) { }
+static void null_glSignalVkFenceNV( GLuint64 vkFence ) { }
+static void null_glSignalVkSemaphoreNV( GLuint64 vkSemaphore ) { }
+static void null_glSpecializeShader( GLuint shader, const GLchar* pEntryPoint, GLuint numSpecializationConstants, const GLuint* pConstantIndex, const GLuint* pConstantValue ) { }
+static void null_glSpecializeShaderARB( GLuint shader, const GLchar* pEntryPoint, GLuint numSpecializationConstants, const GLuint* pConstantIndex, const GLuint* pConstantValue ) { }
 static void null_glSpriteParameterfSGIX( GLenum pname, GLfloat param ) { }
 static void null_glSpriteParameterfvSGIX( GLenum pname, const GLfloat* params ) { }
 static void null_glSpriteParameteriSGIX( GLenum pname, GLint param ) { }
@@ -5301,6 +4359,11 @@ static void null_glTexStorage2D( GLenum target, GLsizei levels, GLenum internalf
 static void null_glTexStorage2DMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations ) { }
 static void null_glTexStorage3D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth ) { }
 static void null_glTexStorage3DMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations ) { }
+static void null_glTexStorageMem1DEXT( GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset ) { }
+static void null_glTexStorageMem2DEXT( GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset ) { }
+static void null_glTexStorageMem2DMultisampleEXT( GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset ) { }
+static void null_glTexStorageMem3DEXT( GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset ) { }
+static void null_glTexStorageMem3DMultisampleEXT( GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset ) { }
 static void null_glTexStorageSparseAMD( GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags ) { }
 static void null_glTexSubImage1DEXT( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels ) { }
 static void null_glTexSubImage2DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels ) { }
@@ -5349,6 +4412,11 @@ static void null_glTextureStorage3D( GLuint texture, GLsizei levels, GLenum inte
 static void null_glTextureStorage3DEXT( GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth ) { }
 static void null_glTextureStorage3DMultisample( GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations ) { }
 static void null_glTextureStorage3DMultisampleEXT( GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations ) { }
+static void null_glTextureStorageMem1DEXT( GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset ) { }
+static void null_glTextureStorageMem2DEXT( GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset ) { }
+static void null_glTextureStorageMem2DMultisampleEXT( GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset ) { }
+static void null_glTextureStorageMem3DEXT( GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset ) { }
+static void null_glTextureStorageMem3DMultisampleEXT( GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset ) { }
 static void null_glTextureStorageSparseAMD( GLuint texture, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags ) { }
 static void null_glTextureSubImage1D( GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels ) { }
 static void null_glTextureSubImage1DEXT( GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels ) { }
@@ -5849,7 +4917,11 @@ static void null_glVideoCaptureStreamParameterivNV( GLuint video_capture_slot, G
 static void null_glViewportArrayv( GLuint first, GLsizei count, const GLfloat* v ) { }
 static void null_glViewportIndexedf( GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h ) { }
 static void null_glViewportIndexedfv( GLuint index, const GLfloat* v ) { }
+static void null_glViewportPositionWScaleNV( GLuint index, GLfloat xcoeff, GLfloat ycoeff ) { }
+static void null_glViewportSwizzleNV( GLuint index, GLenum swizzlex, GLenum swizzley, GLenum swizzlez, GLenum swizzlew ) { }
+static void null_glWaitSemaphoreEXT( GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint* textures, const GLenum* srcLayouts ) { }
 static void null_glWaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) { }
+static void null_glWaitVkSemaphoreNV( GLuint64 vkSemaphore ) { }
 static void null_glWeightPathsNV( GLuint resultPath, GLsizei numPaths, const GLuint* paths, const GLfloat* weights ) { }
 static void null_glWeightPointerARB( GLint size, GLenum type, GLsizei stride, const void* pointer ) { }
 static void null_glWeightbvARB( GLint size, const GLbyte* weights ) { }
@@ -5916,6 +4988,7 @@ static void null_glWindowPos4iMESA( GLint x, GLint y, GLint z, GLint w ) { }
 static void null_glWindowPos4ivMESA( const GLint* v ) { }
 static void null_glWindowPos4sMESA( GLshort x, GLshort y, GLshort z, GLshort w ) { }
 static void null_glWindowPos4svMESA( const GLshort* v ) { }
+static void null_glWindowRectanglesEXT( GLenum mode, GLsizei count, const GLint* box ) { }
 static void null_glWriteMaskEXT( GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW ) { }
 static void* null_wglAllocateMemoryNV( GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority ) { return 0; }
 static BOOL null_wglBindTexImageARB( struct wgl_pbuffer * hPbuffer, int iBuffer ) { return 0; }
@@ -6297,6 +5370,7 @@ struct opengl_funcs null_opengl_funcs =
     },
     {
         null_glAccumxOES,
+        null_glAcquireKeyedMutexWin32EXT,
         null_glActiveProgramEXT,
         null_glActiveShaderProgram,
         null_glActiveStencilFaceEXT,
@@ -6307,6 +5381,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glAlphaFragmentOp2ATI,
         null_glAlphaFragmentOp3ATI,
         null_glAlphaFuncxOES,
+        null_glAlphaToCoverageDitherControlNV,
         null_glApplyFramebufferAttachmentCMAAINTEL,
         null_glApplyTextureEXT,
         null_glAreProgramsResidentNV,
@@ -6426,6 +5501,8 @@ struct opengl_funcs null_opengl_funcs =
         null_glBufferParameteriAPPLE,
         null_glBufferRegionEnabled,
         null_glBufferStorage,
+        null_glBufferStorageExternalEXT,
+        null_glBufferStorageMemEXT,
         null_glBufferSubData,
         null_glBufferSubDataARB,
         null_glCallCommandListNV,
@@ -6545,6 +5622,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glCompressedTextureSubImage3D,
         null_glCompressedTextureSubImage3DEXT,
         null_glConservativeRasterParameterfNV,
+        null_glConservativeRasterParameteriNV,
         null_glConvolutionFilter1D,
         null_glConvolutionFilter1DEXT,
         null_glConvolutionFilter2D,
@@ -6600,6 +5678,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glCreateBuffers,
         null_glCreateCommandListsNV,
         null_glCreateFramebuffers,
+        null_glCreateMemoryObjectsEXT,
         null_glCreatePerfQueryINTEL,
         null_glCreateProgram,
         null_glCreateProgramObjectARB,
@@ -6641,6 +5720,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glDeleteFragmentShaderATI,
         null_glDeleteFramebuffers,
         null_glDeleteFramebuffersEXT,
+        null_glDeleteMemoryObjectsEXT,
         null_glDeleteNamedStringARB,
         null_glDeleteNamesAMD,
         null_glDeleteObjectARB,
@@ -6655,9 +5735,11 @@ struct opengl_funcs null_opengl_funcs =
         null_glDeleteProgramsNV,
         null_glDeleteQueries,
         null_glDeleteQueriesARB,
+        null_glDeleteQueryResourceTagNV,
         null_glDeleteRenderbuffers,
         null_glDeleteRenderbuffersEXT,
         null_glDeleteSamplers,
+        null_glDeleteSemaphoresEXT,
         null_glDeleteShader,
         null_glDeleteStatesNV,
         null_glDeleteSync,
@@ -6728,6 +5810,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glDrawTransformFeedbackNV,
         null_glDrawTransformFeedbackStream,
         null_glDrawTransformFeedbackStreamInstanced,
+        null_glDrawVkImageNV,
         null_glEdgeFlagFormatNV,
         null_glEdgeFlagPointerEXT,
         null_glEdgeFlagPointerListIBM,
@@ -6825,6 +5908,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glFramebufferRenderbufferEXT,
         null_glFramebufferSampleLocationsfvARB,
         null_glFramebufferSampleLocationsfvNV,
+        null_glFramebufferSamplePositionsfvAMD,
         null_glFramebufferTexture,
         null_glFramebufferTexture1D,
         null_glFramebufferTexture1DEXT,
@@ -6860,9 +5944,11 @@ struct opengl_funcs null_opengl_funcs =
         null_glGenProgramsNV,
         null_glGenQueries,
         null_glGenQueriesARB,
+        null_glGenQueryResourceTagNV,
         null_glGenRenderbuffers,
         null_glGenRenderbuffersEXT,
         null_glGenSamplers,
+        null_glGenSemaphoresEXT,
         null_glGenSymbolsEXT,
         null_glGenTexturesEXT,
         null_glGenTransformFeedbacks,
@@ -6960,6 +6046,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glGetFragmentMaterialivSGIX,
         null_glGetFramebufferAttachmentParameteriv,
         null_glGetFramebufferAttachmentParameterivEXT,
+        null_glGetFramebufferParameterfvAMD,
         null_glGetFramebufferParameteriv,
         null_glGetFramebufferParameterivEXT,
         null_glGetGraphicsResetStatus,
@@ -7003,6 +6090,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glGetMapParameterivNV,
         null_glGetMapxvOES,
         null_glGetMaterialxOES,
+        null_glGetMemoryObjectParameterivEXT,
         null_glGetMinmax,
         null_glGetMinmaxEXT,
         null_glGetMinmaxParameterfv,
@@ -7033,6 +6121,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glGetNamedBufferSubDataEXT,
         null_glGetNamedFramebufferAttachmentParameteriv,
         null_glGetNamedFramebufferAttachmentParameterivEXT,
+        null_glGetNamedFramebufferParameterfvAMD,
         null_glGetNamedFramebufferParameteriv,
         null_glGetNamedFramebufferParameterivEXT,
         null_glGetNamedProgramLocalParameterIivEXT,
@@ -7138,6 +6227,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glGetSamplerParameterIuiv,
         null_glGetSamplerParameterfv,
         null_glGetSamplerParameteriv,
+        null_glGetSemaphoreParameterui64vEXT,
         null_glGetSeparableFilter,
         null_glGetSeparableFilterEXT,
         null_glGetShaderInfoLog,
@@ -7207,6 +6297,8 @@ struct opengl_funcs null_opengl_funcs =
         null_glGetUniformui64vNV,
         null_glGetUniformuiv,
         null_glGetUniformuivEXT,
+        null_glGetUnsignedBytei_vEXT,
+        null_glGetUnsignedBytevEXT,
         null_glGetVariantArrayObjectfvATI,
         null_glGetVariantArrayObjectivATI,
         null_glGetVariantBooleanvEXT,
@@ -7252,6 +6344,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glGetVideoivNV,
         null_glGetVideoui64vNV,
         null_glGetVideouivNV,
+        null_glGetVkProcAddrNV,
         null_glGetnColorTable,
         null_glGetnColorTableARB,
         null_glGetnCompressedTexImage,
@@ -7306,6 +6399,12 @@ struct opengl_funcs null_opengl_funcs =
         null_glImageTransformParameterfvHP,
         null_glImageTransformParameteriHP,
         null_glImageTransformParameterivHP,
+        null_glImportMemoryFdEXT,
+        null_glImportMemoryWin32HandleEXT,
+        null_glImportMemoryWin32NameEXT,
+        null_glImportSemaphoreFdEXT,
+        null_glImportSemaphoreWin32HandleEXT,
+        null_glImportSemaphoreWin32NameEXT,
         null_glImportSyncEXT,
         null_glIndexFormatNV,
         null_glIndexFuncEXT,
@@ -7339,6 +6438,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glIsFramebufferEXT,
         null_glIsImageHandleResidentARB,
         null_glIsImageHandleResidentNV,
+        null_glIsMemoryObjectEXT,
         null_glIsNameAMD,
         null_glIsNamedBufferResidentNV,
         null_glIsNamedStringARB,
@@ -7356,6 +6456,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glIsRenderbuffer,
         null_glIsRenderbufferEXT,
         null_glIsSampler,
+        null_glIsSemaphoreEXT,
         null_glIsShader,
         null_glIsStateNV,
         null_glIsSync,
@@ -7368,6 +6469,9 @@ struct opengl_funcs null_opengl_funcs =
         null_glIsVertexArray,
         null_glIsVertexArrayAPPLE,
         null_glIsVertexAttribEnabledAPPLE,
+        null_glLGPUCopyImageSubDataNVX,
+        null_glLGPUInterlockNVX,
+        null_glLGPUNamedBufferSubDataNVX,
         null_glLabelObjectEXT,
         null_glLightEnviSGIX,
         null_glLightModelxOES,
@@ -7457,9 +6561,11 @@ struct opengl_funcs null_opengl_funcs =
         null_glMatrixTranslatedEXT,
         null_glMatrixTranslatefEXT,
         null_glMaxShaderCompilerThreadsARB,
+        null_glMaxShaderCompilerThreadsKHR,
         null_glMemoryBarrier,
         null_glMemoryBarrierByRegion,
         null_glMemoryBarrierEXT,
+        null_glMemoryObjectParameterivEXT,
         null_glMinSampleShading,
         null_glMinSampleShadingARB,
         null_glMinmax,
@@ -7476,6 +6582,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glMultiDrawArraysIndirectAMD,
         null_glMultiDrawArraysIndirectBindlessCountNV,
         null_glMultiDrawArraysIndirectBindlessNV,
+        null_glMultiDrawArraysIndirectCount,
         null_glMultiDrawArraysIndirectCountARB,
         null_glMultiDrawElementArrayAPPLE,
         null_glMultiDrawElements,
@@ -7485,6 +6592,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glMultiDrawElementsIndirectAMD,
         null_glMultiDrawElementsIndirectBindlessCountNV,
         null_glMultiDrawElementsIndirectBindlessNV,
+        null_glMultiDrawElementsIndirectCount,
         null_glMultiDrawElementsIndirectCountARB,
         null_glMultiDrawRangeElementArrayAPPLE,
         null_glMultiModeDrawArraysIBM,
@@ -7643,12 +6751,25 @@ struct opengl_funcs null_opengl_funcs =
         null_glMultiTexSubImage1DEXT,
         null_glMultiTexSubImage2DEXT,
         null_glMultiTexSubImage3DEXT,
+        null_glMulticastBarrierNV,
+        null_glMulticastBlitFramebufferNV,
+        null_glMulticastBufferSubDataNV,
+        null_glMulticastCopyBufferSubDataNV,
+        null_glMulticastCopyImageSubDataNV,
+        null_glMulticastFramebufferSampleLocationsfvNV,
+        null_glMulticastGetQueryObjecti64vNV,
+        null_glMulticastGetQueryObjectivNV,
+        null_glMulticastGetQueryObjectui64vNV,
+        null_glMulticastGetQueryObjectuivNV,
+        null_glMulticastWaitSyncNV,
         null_glNamedBufferData,
         null_glNamedBufferDataEXT,
         null_glNamedBufferPageCommitmentARB,
         null_glNamedBufferPageCommitmentEXT,
         null_glNamedBufferStorage,
         null_glNamedBufferStorageEXT,
+        null_glNamedBufferStorageExternalEXT,
+        null_glNamedBufferStorageMemEXT,
         null_glNamedBufferSubData,
         null_glNamedBufferSubDataEXT,
         null_glNamedCopyBufferSubDataEXT,
@@ -7661,6 +6782,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glNamedFramebufferRenderbufferEXT,
         null_glNamedFramebufferSampleLocationsfvARB,
         null_glNamedFramebufferSampleLocationsfvNV,
+        null_glNamedFramebufferSamplePositionsfvAMD,
         null_glNamedFramebufferTexture,
         null_glNamedFramebufferTexture1DEXT,
         null_glNamedFramebufferTexture2DEXT,
@@ -7777,6 +6899,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glPointSizexOES,
         null_glPollAsyncSGIX,
         null_glPollInstrumentsSGIX,
+        null_glPolygonOffsetClamp,
         null_glPolygonOffsetClampEXT,
         null_glPolygonOffsetEXT,
         null_glPolygonOffsetxOES,
@@ -7979,6 +7102,8 @@ struct opengl_funcs null_opengl_funcs =
         null_glQueryCounter,
         null_glQueryMatrixxOES,
         null_glQueryObjectParameteruiAMD,
+        null_glQueryResourceNV,
+        null_glQueryResourceTagNV,
         null_glRasterPos2xOES,
         null_glRasterPos2xvOES,
         null_glRasterPos3xOES,
@@ -7993,7 +7118,9 @@ struct opengl_funcs null_opengl_funcs =
         null_glRectxOES,
         null_glRectxvOES,
         null_glReferencePlaneSGIX,
+        null_glReleaseKeyedMutexWin32EXT,
         null_glReleaseShaderCompiler,
+        null_glRenderGpuMaskNV,
         null_glRenderbufferStorage,
         null_glRenderbufferStorageEXT,
         null_glRenderbufferStorageMultisample,
@@ -8094,6 +7221,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glSelectPerfMonitorCountersAMD,
         null_glSelectTextureCoordSetSGIS,
         null_glSelectTextureSGIS,
+        null_glSemaphoreParameterui64vEXT,
         null_glSeparableFilter2D,
         null_glSeparableFilter2DEXT,
         null_glSetFenceAPPLE,
@@ -8110,6 +7238,11 @@ struct opengl_funcs null_opengl_funcs =
         null_glShaderSourceARB,
         null_glShaderStorageBlockBinding,
         null_glSharpenTexFuncSGIS,
+        null_glSignalSemaphoreEXT,
+        null_glSignalVkFenceNV,
+        null_glSignalVkSemaphoreNV,
+        null_glSpecializeShader,
+        null_glSpecializeShaderARB,
         null_glSpriteParameterfSGIX,
         null_glSpriteParameterfvSGIX,
         null_glSpriteParameteriSGIX,
@@ -8235,6 +7368,11 @@ struct opengl_funcs null_opengl_funcs =
         null_glTexStorage2DMultisample,
         null_glTexStorage3D,
         null_glTexStorage3DMultisample,
+        null_glTexStorageMem1DEXT,
+        null_glTexStorageMem2DEXT,
+        null_glTexStorageMem2DMultisampleEXT,
+        null_glTexStorageMem3DEXT,
+        null_glTexStorageMem3DMultisampleEXT,
         null_glTexStorageSparseAMD,
         null_glTexSubImage1DEXT,
         null_glTexSubImage2DEXT,
@@ -8283,6 +7421,11 @@ struct opengl_funcs null_opengl_funcs =
         null_glTextureStorage3DEXT,
         null_glTextureStorage3DMultisample,
         null_glTextureStorage3DMultisampleEXT,
+        null_glTextureStorageMem1DEXT,
+        null_glTextureStorageMem2DEXT,
+        null_glTextureStorageMem2DMultisampleEXT,
+        null_glTextureStorageMem3DEXT,
+        null_glTextureStorageMem3DMultisampleEXT,
         null_glTextureStorageSparseAMD,
         null_glTextureSubImage1D,
         null_glTextureSubImage1DEXT,
@@ -8783,7 +7926,11 @@ struct opengl_funcs null_opengl_funcs =
         null_glViewportArrayv,
         null_glViewportIndexedf,
         null_glViewportIndexedfv,
+        null_glViewportPositionWScaleNV,
+        null_glViewportSwizzleNV,
+        null_glWaitSemaphoreEXT,
         null_glWaitSync,
+        null_glWaitVkSemaphoreNV,
         null_glWeightPathsNV,
         null_glWeightPointerARB,
         null_glWeightbvARB,
@@ -8850,6 +7997,7 @@ struct opengl_funcs null_opengl_funcs =
         null_glWindowPos4ivMESA,
         null_glWindowPos4sMESA,
         null_glWindowPos4svMESA,
+        null_glWindowRectanglesEXT,
         null_glWriteMaskEXT,
         null_wglAllocateMemoryNV,
         null_wglBindTexImageARB,
diff --git a/include/wine/wgl.h b/include/wine/wgl.h
index 4a46c9585c..fe78f135b6 100644
--- a/include/wine/wgl.h
+++ b/include/wine/wgl.h
@@ -124,6 +124,7 @@ typedef void                   GLvoid;
 #define GL_ALL_BARRIER_BITS                                                      0xFFFFFFFF
 #define GL_ALL_BARRIER_BITS_EXT                                                  0xFFFFFFFF
 #define GL_ALL_COMPLETED_NV                                                      0x84F2
+#define GL_ALL_PIXELS_AMD                                                        0xFFFFFFFF
 #define GL_ALL_SHADER_BITS                                                       0xFFFFFFFF
 #define GL_ALL_SHADER_BITS_EXT                                                   0xFFFFFFFF
 #define GL_ALL_STATIC_DATA_IBM                                                   103060
@@ -170,6 +171,10 @@ typedef void                   GLvoid;
 #define GL_ALPHA_TEST_QCOM                                                       0x0BC0
 #define GL_ALPHA_TEST_REF                                                        0x0BC2
 #define GL_ALPHA_TEST_REF_QCOM                                                   0x0BC2
+#define GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV                                   0x934D
+#define GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV                                   0x934F
+#define GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV                                    0x934E
+#define GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV                                      0x92BF
 #define GL_ALREADY_SIGNALED                                                      0x911A
 #define GL_ALREADY_SIGNALED_APPLE                                                0x911A
 #define GL_ALWAYS                                                                0x0207
@@ -394,29 +399,41 @@ typedef void                   GLvoid;
 #define GL_CLIENT_STORAGE_BIT                                                    0x0200
 #define GL_CLIENT_STORAGE_BIT_EXT                                                0x0200
 #define GL_CLIENT_VERTEX_ARRAY_BIT                                               0x00000002
+#define GL_CLIPPING_INPUT_PRIMITIVES                                             0x82F6
 #define GL_CLIPPING_INPUT_PRIMITIVES_ARB                                         0x82F6
+#define GL_CLIPPING_OUTPUT_PRIMITIVES                                            0x82F7
 #define GL_CLIPPING_OUTPUT_PRIMITIVES_ARB                                        0x82F7
 #define GL_CLIP_DEPTH_MODE                                                       0x935D
+#define GL_CLIP_DEPTH_MODE_EXT                                                   0x935D
 #define GL_CLIP_DISTANCE0                                                        0x3000
 #define GL_CLIP_DISTANCE0_APPLE                                                  0x3000
+#define GL_CLIP_DISTANCE0_EXT                                                    0x3000
 #define GL_CLIP_DISTANCE1                                                        0x3001
 #define GL_CLIP_DISTANCE1_APPLE                                                  0x3001
+#define GL_CLIP_DISTANCE1_EXT                                                    0x3001
 #define GL_CLIP_DISTANCE2                                                        0x3002
 #define GL_CLIP_DISTANCE2_APPLE                                                  0x3002
+#define GL_CLIP_DISTANCE2_EXT                                                    0x3002
 #define GL_CLIP_DISTANCE3                                                        0x3003
 #define GL_CLIP_DISTANCE3_APPLE                                                  0x3003
+#define GL_CLIP_DISTANCE3_EXT                                                    0x3003
 #define GL_CLIP_DISTANCE4                                                        0x3004
 #define GL_CLIP_DISTANCE4_APPLE                                                  0x3004
+#define GL_CLIP_DISTANCE4_EXT                                                    0x3004
 #define GL_CLIP_DISTANCE5                                                        0x3005
 #define GL_CLIP_DISTANCE5_APPLE                                                  0x3005
+#define GL_CLIP_DISTANCE5_EXT                                                    0x3005
 #define GL_CLIP_DISTANCE6                                                        0x3006
 #define GL_CLIP_DISTANCE6_APPLE                                                  0x3006
+#define GL_CLIP_DISTANCE6_EXT                                                    0x3006
 #define GL_CLIP_DISTANCE7                                                        0x3007
 #define GL_CLIP_DISTANCE7_APPLE                                                  0x3007
+#define GL_CLIP_DISTANCE7_EXT                                                    0x3007
 #define GL_CLIP_DISTANCE_NV                                                      0x8C7A
 #define GL_CLIP_FAR_HINT_PGI                                                     0x1A221
 #define GL_CLIP_NEAR_HINT_PGI                                                    0x1A220
 #define GL_CLIP_ORIGIN                                                           0x935C
+#define GL_CLIP_ORIGIN_EXT                                                       0x935C
 #define GL_CLIP_PLANE0                                                           0x3000
 #define GL_CLIP_PLANE0_IMG                                                       0x3000
 #define GL_CLIP_PLANE1                                                           0x3001
@@ -631,6 +648,7 @@ typedef void                   GLvoid;
 #define GL_COMPILE_AND_EXECUTE                                                   0x1301
 #define GL_COMPILE_STATUS                                                        0x8B81
 #define GL_COMPLETION_STATUS_ARB                                                 0x91B1
+#define GL_COMPLETION_STATUS_KHR                                                 0x91B1
 #define GL_COMPRESSED_ALPHA                                                      0x84E9
 #define GL_COMPRESSED_ALPHA_ARB                                                  0x84E9
 #define GL_COMPRESSED_INTENSITY                                                  0x84EC
@@ -700,6 +718,7 @@ typedef void                   GLvoid;
 #define GL_COMPRESSED_RGBA_ASTC_8x8_KHR                                          0x93B7
 #define GL_COMPRESSED_RGBA_BPTC_UNORM                                            0x8E8C
 #define GL_COMPRESSED_RGBA_BPTC_UNORM_ARB                                        0x8E8C
+#define GL_COMPRESSED_RGBA_BPTC_UNORM_EXT                                        0x8E8C
 #define GL_COMPRESSED_RGBA_FXT1_3DFX                                             0x86B1
 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG                                      0x8C03
 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG                                      0x9137
@@ -713,8 +732,10 @@ typedef void                   GLvoid;
 #define GL_COMPRESSED_RGB_ARB                                                    0x84ED
 #define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT                                      0x8E8E
 #define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB                                  0x8E8E
+#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT                                  0x8E8E
 #define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT                                    0x8E8F
 #define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB                                0x8E8F
+#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT                                0x8E8F
 #define GL_COMPRESSED_RGB_FXT1_3DFX                                              0x86B0
 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG                                       0x8C01
 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG                                       0x8C00
@@ -782,6 +803,7 @@ typedef void                   GLvoid;
 #define GL_COMPRESSED_SRGB_ALPHA                                                 0x8C49
 #define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM                                      0x8E8D
 #define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB                                  0x8E8D
+#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT                                  0x8E8D
 #define GL_COMPRESSED_SRGB_ALPHA_EXT                                             0x8C49
 #define GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT                                0x8A56
 #define GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV2_IMG                                0x93F0
@@ -804,6 +826,7 @@ typedef void                   GLvoid;
 #define GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV                                   0x90FC
 #define GL_COMPUTE_SHADER                                                        0x91B9
 #define GL_COMPUTE_SHADER_BIT                                                    0x00000020
+#define GL_COMPUTE_SHADER_INVOCATIONS                                            0x82F5
 #define GL_COMPUTE_SHADER_INVOCATIONS_ARB                                        0x82F5
 #define GL_COMPUTE_SUBROUTINE                                                    0x92ED
 #define GL_COMPUTE_SUBROUTINE_UNIFORM                                            0x92F3
@@ -815,10 +838,14 @@ typedef void                   GLvoid;
 #define GL_CONFORMANT_NV                                                         0x9374
 #define GL_CONIC_CURVE_TO_NV                                                     0x1A
 #define GL_CONJOINT_NV                                                           0x9284
+#define GL_CONSERVATIVE_RASTERIZATION_INTEL                                      0x83FE
 #define GL_CONSERVATIVE_RASTERIZATION_NV                                         0x9346
 #define GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV                             0x937B
 #define GL_CONSERVATIVE_RASTER_DILATE_NV                                         0x9379
 #define GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV                                   0x937A
+#define GL_CONSERVATIVE_RASTER_MODE_NV                                           0x954D
+#define GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV                                 0x954E
+#define GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV                        0x954F
 #define GL_CONSERVE_MEMORY_HINT_PGI                                              0x1A1FD
 #define GL_CONSTANT                                                              0x8576
 #define GL_CONSTANT_ALPHA                                                        0x8003
@@ -840,7 +867,9 @@ typedef void                   GLvoid;
 #define GL_CONTEXT_FLAG_DEBUG_BIT                                                0x00000002
 #define GL_CONTEXT_FLAG_DEBUG_BIT_KHR                                            0x00000002
 #define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT                                   0x00000001
+#define GL_CONTEXT_FLAG_NO_ERROR_BIT                                             0x00000008
 #define GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR                                         0x00000008
+#define GL_CONTEXT_FLAG_PROTECTED_CONTENT_BIT_EXT                                0x00000010
 #define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT                                        0x00000004
 #define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB                                    0x00000004
 #define GL_CONTEXT_LOST                                                          0x0507
@@ -992,6 +1021,7 @@ typedef void                   GLvoid;
 #define GL_CURRENT_VERTEX_WEIGHT_EXT                                             0x850B
 #define GL_CURRENT_WEIGHT_ARB                                                    0x86A8
 #define GL_CW                                                                    0x0900
+#define GL_D3D12_FENCE_VALUE_EXT                                                 0x9595
 #define GL_DARKEN                                                                0x9297
 #define GL_DARKEN_KHR                                                            0x9297
 #define GL_DARKEN_NV                                                             0x9297
@@ -1089,6 +1119,7 @@ typedef void                   GLvoid;
 #define GL_DECR_WRAP                                                             0x8508
 #define GL_DECR_WRAP_EXT                                                         0x8508
 #define GL_DECR_WRAP_OES                                                         0x8508
+#define GL_DEDICATED_MEMORY_OBJECT_EXT                                           0x9581
 #define GL_DEFORMATIONS_MASK_SGIX                                                0x8196
 #define GL_DELETE_STATUS                                                         0x8B80
 #define GL_DEPENDENT_AR_TEXTURE_2D_NV                                            0x86E9
@@ -1168,6 +1199,9 @@ typedef void                   GLvoid;
 #define GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS                                       0x809C
 #define GL_DETAIL_TEXTURE_LEVEL_SGIS                                             0x809A
 #define GL_DETAIL_TEXTURE_MODE_SGIS                                              0x809B
+#define GL_DEVICE_LUID_EXT                                                       0x9599
+#define GL_DEVICE_NODE_MASK_EXT                                                  0x959A
+#define GL_DEVICE_UUID_EXT                                                       0x9597
 #define GL_DIFFERENCE                                                            0x929E
 #define GL_DIFFERENCE_KHR                                                        0x929E
 #define GL_DIFFERENCE_NV                                                         0x929E
@@ -1340,6 +1374,7 @@ typedef void                   GLvoid;
 #define GL_DRAW_INDIRECT_UNIFIED_NV                                              0x8F40
 #define GL_DRAW_PIXELS_APPLE                                                     0x8A0A
 #define GL_DRAW_PIXEL_TOKEN                                                      0x0705
+#define GL_DRIVER_UUID_EXT                                                       0x9598
 #define GL_DSDT8_MAG8_INTENSITY8_NV                                              0x870B
 #define GL_DSDT8_MAG8_NV                                                         0x870A
 #define GL_DSDT8_NV                                                              0x8709
@@ -1451,6 +1486,7 @@ typedef void                   GLvoid;
 #define GL_EXCLUSION                                                             0x92A0
 #define GL_EXCLUSION_KHR                                                         0x92A0
 #define GL_EXCLUSION_NV                                                          0x92A0
+#define GL_EXCLUSIVE_EXT                                                         0x8F11
 #define GL_EXP                                                                   0x0800
 #define GL_EXP2                                                                  0x0801
 #define GL_EXPAND_NEGATE_NV                                                      0x8539
@@ -1500,6 +1536,15 @@ typedef void                   GLvoid;
 #define GL_FIXED_ONLY_ARB                                                        0x891D
 #define GL_FLAT                                                                  0x1D00
 #define GL_FLOAT                                                                 0x1406
+#define GL_FLOAT16_MAT2_AMD                                                      0x91C5
+#define GL_FLOAT16_MAT2x3_AMD                                                    0x91C8
+#define GL_FLOAT16_MAT2x4_AMD                                                    0x91C9
+#define GL_FLOAT16_MAT3_AMD                                                      0x91C6
+#define GL_FLOAT16_MAT3x2_AMD                                                    0x91CA
+#define GL_FLOAT16_MAT3x4_AMD                                                    0x91CB
+#define GL_FLOAT16_MAT4_AMD                                                      0x91C7
+#define GL_FLOAT16_MAT4x2_AMD                                                    0x91CC
+#define GL_FLOAT16_MAT4x3_AMD                                                    0x91CD
 #define GL_FLOAT16_NV                                                            0x8FF8
 #define GL_FLOAT16_VEC2_NV                                                       0x8FF9
 #define GL_FLOAT16_VEC3_NV                                                       0x8FFA
@@ -1605,6 +1650,8 @@ typedef void                   GLvoid;
 #define GL_FORCE_BLUE_TO_ONE_NV                                                  0x8860
 #define GL_FORMAT_SUBSAMPLE_244_244_OML                                          0x8983
 #define GL_FORMAT_SUBSAMPLE_24_24_OML                                            0x8982
+#define GL_FOVEATION_ENABLE_BIT_QCOM                                             0x00000001
+#define GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM                                  0x00000002
 #define GL_FRACTIONAL_EVEN                                                       0x8E7C
 #define GL_FRACTIONAL_EVEN_EXT                                                   0x8E7C
 #define GL_FRACTIONAL_EVEN_OES                                                   0x8E7C
@@ -1660,6 +1707,7 @@ typedef void                   GLvoid;
 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES                                   0x8B8B
 #define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT                                  0x8A52
 #define GL_FRAGMENT_SHADER_FRAMEBUFFER_FETCH_MRT_ARM                             0x8F66
+#define GL_FRAGMENT_SHADER_INVOCATIONS                                           0x82F4
 #define GL_FRAGMENT_SHADER_INVOCATIONS_ARB                                       0x82F4
 #define GL_FRAGMENT_SUBROUTINE                                                   0x92EC
 #define GL_FRAGMENT_SUBROUTINE_UNIFORM                                           0x92F2
@@ -1719,6 +1767,7 @@ typedef void                   GLvoid;
 #define GL_FRAMEBUFFER_DEFAULT_SAMPLES                                           0x9313
 #define GL_FRAMEBUFFER_DEFAULT_WIDTH                                             0x9310
 #define GL_FRAMEBUFFER_EXT                                                       0x8D40
+#define GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM                                    0x96A2
 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT                                     0x8CD6
 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT                                 0x8CD6
 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES                                 0x8CD6
@@ -1750,6 +1799,7 @@ typedef void                   GLvoid;
 #define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER                                    0x8CDC
 #define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT                                0x8CDC
 #define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES                                0x8CDC
+#define GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR                               0x9633
 #define GL_FRAMEBUFFER_OES                                                       0x8D40
 #define GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB                         0x9342
 #define GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV                          0x9342
@@ -1818,6 +1868,7 @@ typedef void                   GLvoid;
 #define GL_GEOMETRY_SHADER_INVOCATIONS_EXT                                       0x887F
 #define GL_GEOMETRY_SHADER_INVOCATIONS_OES                                       0x887F
 #define GL_GEOMETRY_SHADER_OES                                                   0x8DD9
+#define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED                                    0x82F3
 #define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB                                0x82F3
 #define GL_GEOMETRY_SUBROUTINE                                                   0x92EB
 #define GL_GEOMETRY_SUBROUTINE_UNIFORM                                           0x92F1
@@ -1872,6 +1923,14 @@ typedef void                   GLvoid;
 #define GL_HALF_FLOAT_ARB                                                        0x140B
 #define GL_HALF_FLOAT_NV                                                         0x140B
 #define GL_HALF_FLOAT_OES                                                        0x8D61
+#define GL_HANDLE_TYPE_D3D11_IMAGE_EXT                                           0x958B
+#define GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT                                       0x958C
+#define GL_HANDLE_TYPE_D3D12_FENCE_EXT                                           0x9594
+#define GL_HANDLE_TYPE_D3D12_RESOURCE_EXT                                        0x958A
+#define GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT                                        0x9589
+#define GL_HANDLE_TYPE_OPAQUE_FD_EXT                                             0x9586
+#define GL_HANDLE_TYPE_OPAQUE_WIN32_EXT                                          0x9587
+#define GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT                                      0x9588
 #define GL_HARDLIGHT                                                             0x929B
 #define GL_HARDLIGHT_KHR                                                         0x929B
 #define GL_HARDLIGHT_NV                                                          0x929B
@@ -1986,6 +2045,7 @@ typedef void                   GLvoid;
 #define GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES                                  0x8B9B
 #define GL_IMPLEMENTATION_COLOR_READ_TYPE                                        0x8B9A
 #define GL_IMPLEMENTATION_COLOR_READ_TYPE_OES                                    0x8B9A
+#define GL_INCLUSIVE_EXT                                                         0x8F10
 #define GL_INCR                                                                  0x1E02
 #define GL_INCR_WRAP                                                             0x8507
 #define GL_INCR_WRAP_EXT                                                         0x8507
@@ -2192,13 +2252,21 @@ typedef void                   GLvoid;
 #define GL_LAYER_PROVOKING_VERTEX                                                0x825E
 #define GL_LAYER_PROVOKING_VERTEX_EXT                                            0x825E
 #define GL_LAYER_PROVOKING_VERTEX_OES                                            0x825E
+#define GL_LAYOUT_COLOR_ATTACHMENT_EXT                                           0x958E
 #define GL_LAYOUT_DEFAULT_INTEL                                                  0
+#define GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT                                   0x958F
+#define GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT                                    0x9590
+#define GL_LAYOUT_GENERAL_EXT                                                    0x958D
 #define GL_LAYOUT_LINEAR_CPU_CACHED_INTEL                                        2
 #define GL_LAYOUT_LINEAR_INTEL                                                   1
+#define GL_LAYOUT_SHADER_READ_ONLY_EXT                                           0x9591
+#define GL_LAYOUT_TRANSFER_DST_EXT                                               0x9593
+#define GL_LAYOUT_TRANSFER_SRC_EXT                                               0x9592
 #define GL_LEFT                                                                  0x0406
 #define GL_LEQUAL                                                                0x0203
 #define GL_LERP_ATI                                                              0x8969
 #define GL_LESS                                                                  0x0201
+#define GL_LGPU_SEPARATE_STORAGE_BIT_NVX                                         0x0800
 #define GL_LIGHT0                                                                0x4000
 #define GL_LIGHT1                                                                0x4001
 #define GL_LIGHT2                                                                0x4002
@@ -2235,6 +2303,7 @@ typedef void                   GLvoid;
 #define GL_LINEAR_SHARPEN_ALPHA_SGIS                                             0x80AE
 #define GL_LINEAR_SHARPEN_COLOR_SGIS                                             0x80AF
 #define GL_LINEAR_SHARPEN_SGIS                                                   0x80AD
+#define GL_LINEAR_TILING_EXT                                                     0x9585
 #define GL_LINES                                                                 0x0001
 #define GL_LINES_ADJACENCY                                                       0x000A
 #define GL_LINES_ADJACENCY_ARB                                                   0x000A
@@ -2283,10 +2352,12 @@ typedef void                   GLvoid;
 #define GL_LOSE_CONTEXT_ON_RESET_EXT                                             0x8252
 #define GL_LOSE_CONTEXT_ON_RESET_KHR                                             0x8252
 #define GL_LOWER_LEFT                                                            0x8CA1
+#define GL_LOWER_LEFT_EXT                                                        0x8CA1
 #define GL_LOW_FLOAT                                                             0x8DF0
 #define GL_LOW_INT                                                               0x8DF3
 #define GL_LO_BIAS_NV                                                            0x8715
 #define GL_LO_SCALE_NV                                                           0x870F
+#define GL_LUID_SIZE_EXT                                                         8
 #define GL_LUMINANCE                                                             0x1909
 #define GL_LUMINANCE12                                                           0x8041
 #define GL_LUMINANCE12_ALPHA12                                                   0x8047
@@ -2519,6 +2590,7 @@ typedef void                   GLvoid;
 #define GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX                                        0x8178
 #define GL_MAX_CLIP_DISTANCES                                                    0x0D32
 #define GL_MAX_CLIP_DISTANCES_APPLE                                              0x0D32
+#define GL_MAX_CLIP_DISTANCES_EXT                                                0x0D32
 #define GL_MAX_CLIP_PLANES                                                       0x0D32
 #define GL_MAX_CLIP_PLANES_IMG                                                   0x0D32
 #define GL_MAX_COLOR_ATTACHMENTS                                                 0x8CDF
@@ -2530,6 +2602,7 @@ typedef void                   GLvoid;
 #define GL_MAX_COMBINED_ATOMIC_COUNTERS                                          0x92D7
 #define GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS                                   0x92D1
 #define GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES                                  0x82FA
+#define GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES_EXT                              0x82FA
 #define GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS                               0x8266
 #define GL_MAX_COMBINED_DIMENSIONS                                               0x8282
 #define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS                              0x8A33
@@ -2575,6 +2648,7 @@ typedef void                   GLvoid;
 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT                                         0x851C
 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES                                         0x851C
 #define GL_MAX_CULL_DISTANCES                                                    0x82F9
+#define GL_MAX_CULL_DISTANCES_EXT                                                0x82F9
 #define GL_MAX_DEBUG_GROUP_STACK_DEPTH                                           0x826C
 #define GL_MAX_DEBUG_GROUP_STACK_DEPTH_KHR                                       0x826C
 #define GL_MAX_DEBUG_LOGGED_MESSAGES                                             0x9144
@@ -2681,6 +2755,7 @@ typedef void                   GLvoid;
 #define GL_MAX_LABEL_LENGTH                                                      0x82E8
 #define GL_MAX_LABEL_LENGTH_KHR                                                  0x82E8
 #define GL_MAX_LAYERS                                                            0x8281
+#define GL_MAX_LGPU_GPUS_NVX                                                     0x92BA
 #define GL_MAX_LIGHTS                                                            0x0D31
 #define GL_MAX_LIST_NESTING                                                      0x0B31
 #define GL_MAX_MAP_TESSELLATION_NV                                               0x86D6
@@ -2771,6 +2846,7 @@ typedef void                   GLvoid;
 #define GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_FAST_SIZE_EXT                       0x9650
 #define GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_SIZE_EXT                            0x9651
 #define GL_MAX_SHADER_COMPILER_THREADS_ARB                                       0x91B0
+#define GL_MAX_SHADER_COMPILER_THREADS_KHR                                       0x91B0
 #define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT                          0x8F63
 #define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_SIZE_EXT                               0x8F67
 #define GL_MAX_SHADER_STORAGE_BLOCK_SIZE                                         0x90DE
@@ -2864,6 +2940,7 @@ typedef void                   GLvoid;
 #define GL_MAX_TEXTURE_IMAGE_UNITS_NV                                            0x8872
 #define GL_MAX_TEXTURE_LOD_BIAS                                                  0x84FD
 #define GL_MAX_TEXTURE_LOD_BIAS_EXT                                              0x84FD
+#define GL_MAX_TEXTURE_MAX_ANISOTROPY                                            0x84FF
 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT                                        0x84FF
 #define GL_MAX_TEXTURE_SIZE                                                      0x0D33
 #define GL_MAX_TEXTURE_STACK_DEPTH                                               0x0D39
@@ -2921,9 +2998,11 @@ typedef void                   GLvoid;
 #define GL_MAX_VERTEX_VARYING_COMPONENTS_EXT                                     0x8DDE
 #define GL_MAX_VIEWPORTS                                                         0x825B
 #define GL_MAX_VIEWPORTS_NV                                                      0x825B
+#define GL_MAX_VIEWPORTS_OES                                                     0x825B
 #define GL_MAX_VIEWPORT_DIMS                                                     0x0D3A
 #define GL_MAX_VIEWS_OVR                                                         0x9631
 #define GL_MAX_WIDTH                                                             0x827E
+#define GL_MAX_WINDOW_RECTANGLES_EXT                                             0x8F14
 #define GL_MEDIUM_FLOAT                                                          0x8DF1
 #define GL_MEDIUM_INT                                                            0x8DF4
 #define GL_MIN                                                                   0x8007
@@ -3020,6 +3099,8 @@ typedef void                   GLvoid;
 #define GL_MOVE_TO_RESETS_NV                                                     0x90B5
 #define GL_MOV_ATI                                                               0x8961
 #define GL_MULT                                                                  0x0103
+#define GL_MULTICAST_GPUS_NV                                                     0x92BA
+#define GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV                             0x9549
 #define GL_MULTIPLY                                                              0x9294
 #define GL_MULTIPLY_KHR                                                          0x9294
 #define GL_MULTIPLY_NV                                                           0x9294
@@ -3068,6 +3149,7 @@ typedef void                   GLvoid;
 #define GL_NEGATE_BIT_ATI                                                        0x00000004
 #define GL_NEGATIVE_ONE_EXT                                                      0x87DF
 #define GL_NEGATIVE_ONE_TO_ONE                                                   0x935E
+#define GL_NEGATIVE_ONE_TO_ONE_EXT                                               0x935E
 #define GL_NEGATIVE_W_EXT                                                        0x87DC
 #define GL_NEGATIVE_X_EXT                                                        0x87D9
 #define GL_NEGATIVE_Y_EXT                                                        0x87DA
@@ -3115,6 +3197,7 @@ typedef void                   GLvoid;
 #define GL_NUM_COMPATIBLE_SUBROUTINES                                            0x8E4A
 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS                                        0x86A2
 #define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB                                    0x86A2
+#define GL_NUM_DEVICE_UUIDS_EXT                                                  0x9596
 #define GL_NUM_DOWNSAMPLE_SCALES_IMG                                             0x913D
 #define GL_NUM_EXTENSIONS                                                        0x821D
 #define GL_NUM_FILL_STREAMS_NV                                                   0x8E29
@@ -3133,9 +3216,12 @@ typedef void                   GLvoid;
 #define GL_NUM_SHADING_LANGUAGE_VERSIONS                                         0x82E9
 #define GL_NUM_SPARSE_LEVELS_ARB                                                 0x91AA
 #define GL_NUM_SPARSE_LEVELS_EXT                                                 0x91AA
+#define GL_NUM_SPIR_V_EXTENSIONS                                                 0x9554
+#define GL_NUM_TILING_TYPES_EXT                                                  0x9582
 #define GL_NUM_VIDEO_CAPTURE_STREAMS_NV                                          0x9024
 #define GL_NUM_VIRTUAL_PAGE_SIZES_ARB                                            0x91A8
 #define GL_NUM_VIRTUAL_PAGE_SIZES_EXT                                            0x91A8
+#define GL_NUM_WINDOW_RECTANGLES_EXT                                             0x8F15
 #define GL_OBJECT_ACTIVE_ATTRIBUTES_ARB                                          0x8B89
 #define GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB                                0x8B8A
 #define GL_OBJECT_ACTIVE_UNIFORMS_ARB                                            0x8B86
@@ -3215,6 +3301,7 @@ typedef void                   GLvoid;
 #define GL_OPERAND2_RGB_EXT                                                      0x8592
 #define GL_OPERAND3_ALPHA_NV                                                     0x859B
 #define GL_OPERAND3_RGB_NV                                                       0x8593
+#define GL_OPTIMAL_TILING_EXT                                                    0x9584
 #define GL_OP_ADD_EXT                                                            0x8787
 #define GL_OP_CLAMP_EXT                                                          0x878E
 #define GL_OP_CROSS_PRODUCT_EXT                                                  0x8797
@@ -3319,7 +3406,9 @@ typedef void                   GLvoid;
 #define GL_PALETTE8_RGBA4_OES                                                    0x8B98
 #define GL_PALETTE8_RGBA8_OES                                                    0x8B96
 #define GL_PARALLEL_ARRAYS_INTEL                                                 0x83F4
+#define GL_PARAMETER_BUFFER                                                      0x80EE
 #define GL_PARAMETER_BUFFER_ARB                                                  0x80EE
+#define GL_PARAMETER_BUFFER_BINDING                                              0x80EF
 #define GL_PARAMETER_BUFFER_BINDING_ARB                                          0x80EF
 #define GL_PARTIAL_SUCCESS_NV                                                    0x902E
 #define GL_PASS_THROUGH_NV                                                       0x86E6
@@ -3410,10 +3499,14 @@ typedef void                   GLvoid;
 #define GL_PERFQUERY_WAIT_INTEL                                                  0x83FB
 #define GL_PERSPECTIVE_CORRECTION_HINT                                           0x0C50
 #define GL_PERTURB_EXT                                                           0x85AE
+#define GL_PER_GPU_STORAGE_BIT_NV                                                0x0800
+#define GL_PER_GPU_STORAGE_NV                                                    0x9548
 #define GL_PER_STAGE_CONSTANTS_NV                                                0x8535
 #define GL_PHONG_HINT_WIN                                                        0x80EB
 #define GL_PHONG_WIN                                                             0x80EA
 #define GL_PINLIGHT_NV                                                           0x92A8
+#define GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD                                       0x91AE
+#define GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD                                       0x91AF
 #define GL_PIXEL_BUFFER_BARRIER_BIT                                              0x00000080
 #define GL_PIXEL_BUFFER_BARRIER_BIT_EXT                                          0x00000080
 #define GL_PIXEL_COUNTER_BITS_NV                                                 0x8864
@@ -3451,7 +3544,9 @@ typedef void                   GLvoid;
 #define GL_PIXEL_PACK_BUFFER_BINDING                                             0x88ED
 #define GL_PIXEL_PACK_BUFFER_BINDING_ARB                                         0x88ED
 #define GL_PIXEL_PACK_BUFFER_BINDING_EXT                                         0x88ED
+#define GL_PIXEL_PACK_BUFFER_BINDING_NV                                          0x88ED
 #define GL_PIXEL_PACK_BUFFER_EXT                                                 0x88EB
+#define GL_PIXEL_PACK_BUFFER_NV                                                  0x88EB
 #define GL_PIXEL_SUBSAMPLE_2424_SGIX                                             0x85A3
 #define GL_PIXEL_SUBSAMPLE_4242_SGIX                                             0x85A4
 #define GL_PIXEL_SUBSAMPLE_4444_SGIX                                             0x85A2
@@ -3481,7 +3576,9 @@ typedef void                   GLvoid;
 #define GL_PIXEL_UNPACK_BUFFER_BINDING                                           0x88EF
 #define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB                                       0x88EF
 #define GL_PIXEL_UNPACK_BUFFER_BINDING_EXT                                       0x88EF
+#define GL_PIXEL_UNPACK_BUFFER_BINDING_NV                                        0x88EF
 #define GL_PIXEL_UNPACK_BUFFER_EXT                                               0x88EC
+#define GL_PIXEL_UNPACK_BUFFER_NV                                                0x88EC
 #define GL_PLUS_CLAMPED_ALPHA_NV                                                 0x92B2
 #define GL_PLUS_CLAMPED_NV                                                       0x92B1
 #define GL_PLUS_DARKER_NV                                                        0x9292
@@ -3534,6 +3631,7 @@ typedef void                   GLvoid;
 #define GL_POLYGON_MODE                                                          0x0B40
 #define GL_POLYGON_MODE_NV                                                       0x0B40
 #define GL_POLYGON_OFFSET_BIAS_EXT                                               0x8039
+#define GL_POLYGON_OFFSET_CLAMP                                                  0x8E1B
 #define GL_POLYGON_OFFSET_CLAMP_EXT                                              0x8E1B
 #define GL_POLYGON_OFFSET_COMMAND_NV                                             0x000E
 #define GL_POLYGON_OFFSET_EXT                                                    0x8037
@@ -3608,6 +3706,7 @@ typedef void                   GLvoid;
 #define GL_PRIMITIVES_GENERATED_EXT                                              0x8C87
 #define GL_PRIMITIVES_GENERATED_NV                                               0x8C87
 #define GL_PRIMITIVES_GENERATED_OES                                              0x8C87
+#define GL_PRIMITIVES_SUBMITTED                                                  0x82EF
 #define GL_PRIMITIVES_SUBMITTED_ARB                                              0x82EF
 #define GL_PRIMITIVE_BOUNDING_BOX                                                0x92BE
 #define GL_PRIMITIVE_BOUNDING_BOX_ARB                                            0x92BE
@@ -3686,6 +3785,7 @@ typedef void                   GLvoid;
 #define GL_PROJECTION_MATRIX                                                     0x0BA7
 #define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES                               0x898E
 #define GL_PROJECTION_STACK_DEPTH                                                0x0BA4
+#define GL_PROTECTED_MEMORY_OBJECT_EXT                                           0x959B
 #define GL_PROVOKING_VERTEX                                                      0x8E4F
 #define GL_PROVOKING_VERTEX_EXT                                                  0x8E4F
 #define GL_PROXY_COLOR_TABLE                                                     0x80D3
@@ -3722,6 +3822,7 @@ typedef void                   GLvoid;
 #define GL_PROXY_TEXTURE_RECTANGLE_ARB                                           0x84F7
 #define GL_PROXY_TEXTURE_RECTANGLE_NV                                            0x84F7
 #define GL_PURGEABLE_APPLE                                                       0x8A1D
+#define GL_PURGED_CONTEXT_RESET_NV                                               0x92BB
 #define GL_Q                                                                     0x2003
 #define GL_QUADRATIC_ATTENUATION                                                 0x1209
 #define GL_QUADRATIC_CURVE_TO_NV                                                 0x0A
@@ -3765,6 +3866,12 @@ typedef void                   GLvoid;
 #define GL_QUERY_NO_WAIT_NV                                                      0x8E14
 #define GL_QUERY_OBJECT_AMD                                                      0x9153
 #define GL_QUERY_OBJECT_EXT                                                      0x9153
+#define GL_QUERY_RESOURCE_BUFFEROBJECT_NV                                        0x9547
+#define GL_QUERY_RESOURCE_MEMTYPE_VIDMEM_NV                                      0x9542
+#define GL_QUERY_RESOURCE_RENDERBUFFER_NV                                        0x9546
+#define GL_QUERY_RESOURCE_SYS_RESERVED_NV                                        0x9544
+#define GL_QUERY_RESOURCE_TEXTURE_NV                                             0x9545
+#define GL_QUERY_RESOURCE_TYPE_VIDMEM_ALLOC_NV                                   0x9540
 #define GL_QUERY_RESULT                                                          0x8866
 #define GL_QUERY_RESULT_ARB                                                      0x8866
 #define GL_QUERY_RESULT_AVAILABLE                                                0x8867
@@ -3973,6 +4080,7 @@ typedef void                   GLvoid;
 #define GL_RENDERBUFFER_WIDTH_OES                                                0x8D42
 #define GL_RENDERER                                                              0x1F01
 #define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM                                     0x8FB3
+#define GL_RENDER_GPU_MASK_NV                                                    0x9558
 #define GL_RENDER_MODE                                                           0x0C40
 #define GL_REPEAT                                                                0x2901
 #define GL_REPLACE                                                               0x1E01
@@ -4299,6 +4407,8 @@ typedef void                   GLvoid;
 #define GL_SHADER                                                                0x82E1
 #define GL_SHADER_BINARY_DMP                                                     0x9250
 #define GL_SHADER_BINARY_FORMATS                                                 0x8DF8
+#define GL_SHADER_BINARY_FORMAT_SPIR_V                                           0x9551
+#define GL_SHADER_BINARY_FORMAT_SPIR_V_ARB                                       0x9551
 #define GL_SHADER_BINARY_VIV                                                     0x8FC4
 #define GL_SHADER_COMPILER                                                       0x8DFA
 #define GL_SHADER_CONSISTENT_NV                                                  0x86DD
@@ -4427,6 +4537,9 @@ typedef void                   GLvoid;
 #define GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_EXT                            0x91A9
 #define GL_SPECULAR                                                              0x1202
 #define GL_SPHERE_MAP                                                            0x2402
+#define GL_SPIR_V_BINARY                                                         0x9552
+#define GL_SPIR_V_BINARY_ARB                                                     0x9552
+#define GL_SPIR_V_EXTENSIONS                                                     0x9553
 #define GL_SPOT_CUTOFF                                                           0x1206
 #define GL_SPOT_DIRECTION                                                        0x1204
 #define GL_SPOT_EXPONENT                                                         0x1205
@@ -4625,6 +4738,7 @@ typedef void                   GLvoid;
 #define GL_TESS_CONTROL_SHADER_BIT_OES                                           0x00000008
 #define GL_TESS_CONTROL_SHADER_EXT                                               0x8E88
 #define GL_TESS_CONTROL_SHADER_OES                                               0x8E88
+#define GL_TESS_CONTROL_SHADER_PATCHES                                           0x82F1
 #define GL_TESS_CONTROL_SHADER_PATCHES_ARB                                       0x82F1
 #define GL_TESS_CONTROL_SUBROUTINE                                               0x92E9
 #define GL_TESS_CONTROL_SUBROUTINE_UNIFORM                                       0x92EF
@@ -4636,6 +4750,7 @@ typedef void                   GLvoid;
 #define GL_TESS_EVALUATION_SHADER_BIT_EXT                                        0x00000010
 #define GL_TESS_EVALUATION_SHADER_BIT_OES                                        0x00000010
 #define GL_TESS_EVALUATION_SHADER_EXT                                            0x8E87
+#define GL_TESS_EVALUATION_SHADER_INVOCATIONS                                    0x82F2
 #define GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB                                0x82F2
 #define GL_TESS_EVALUATION_SHADER_OES                                            0x8E87
 #define GL_TESS_EVALUATION_SUBROUTINE                                            0x92EA
@@ -4751,6 +4866,7 @@ typedef void                   GLvoid;
 #define GL_TEXTURE_ALPHA_TYPE                                                    0x8C13
 #define GL_TEXTURE_ALPHA_TYPE_ARB                                                0x8C13
 #define GL_TEXTURE_APPLICATION_MODE_EXT                                          0x834F
+#define GL_TEXTURE_ASTC_DECODE_PRECISION_EXT                                     0x8F69
 #define GL_TEXTURE_BASE_LEVEL                                                    0x813C
 #define GL_TEXTURE_BASE_LEVEL_SGIS                                               0x813C
 #define GL_TEXTURE_BINDING_1D                                                    0x8068
@@ -4971,6 +5087,7 @@ typedef void                   GLvoid;
 #define GL_TEXTURE_MATERIAL_PARAMETER_EXT                                        0x8352
 #define GL_TEXTURE_MATRIX                                                        0x0BA8
 #define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES                                  0x898F
+#define GL_TEXTURE_MAX_ANISOTROPY                                                0x84FE
 #define GL_TEXTURE_MAX_ANISOTROPY_EXT                                            0x84FE
 #define GL_TEXTURE_MAX_CLAMP_R_SGIX                                              0x836B
 #define GL_TEXTURE_MAX_CLAMP_S_SGIX                                              0x8369
@@ -4992,6 +5109,7 @@ typedef void                   GLvoid;
 #define GL_TEXTURE_PRE_SPECULAR_HP                                               0x8169
 #define GL_TEXTURE_PRIORITY                                                      0x8066
 #define GL_TEXTURE_PRIORITY_EXT                                                  0x8066
+#define GL_TEXTURE_PROTECTED_EXT                                                 0x8BFA
 #define GL_TEXTURE_RANGE_LENGTH_APPLE                                            0x85B7
 #define GL_TEXTURE_RANGE_POINTER_APPLE                                           0x85B8
 #define GL_TEXTURE_RECTANGLE                                                     0x84F5
@@ -5032,6 +5150,7 @@ typedef void                   GLvoid;
 #define GL_TEXTURE_SWIZZLE_R_EXT                                                 0x8E42
 #define GL_TEXTURE_TARGET                                                        0x1006
 #define GL_TEXTURE_TARGET_QCOM                                                   0x8BDA
+#define GL_TEXTURE_TILING_EXT                                                    0x9580
 #define GL_TEXTURE_TOO_LARGE_EXT                                                 0x8065
 #define GL_TEXTURE_TYPE_QCOM                                                     0x8BD7
 #define GL_TEXTURE_UNSIGNED_REMAP_MODE_NV                                        0x888F
@@ -5060,6 +5179,7 @@ typedef void                   GLvoid;
 #define GL_TEXTURE_WRAP_S                                                        0x2802
 #define GL_TEXTURE_WRAP_T                                                        0x2803
 #define GL_TEXT_FRAGMENT_SHADER_ATI                                              0x8200
+#define GL_TILING_TYPES_EXT                                                      0x9583
 #define GL_TIMEOUT_EXPIRED                                                       0x911B
 #define GL_TIMEOUT_EXPIRED_APPLE                                                 0x911B
 #define GL_TIMEOUT_IGNORED                                                       0xFFFFFFFFFFFFFFFF
@@ -5111,12 +5231,14 @@ typedef void                   GLvoid;
 #define GL_TRANSFORM_FEEDBACK_BUFFER_START_NV                                    0x8C84
 #define GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE                                      0x934C
 #define GL_TRANSFORM_FEEDBACK_NV                                                 0x8E22
+#define GL_TRANSFORM_FEEDBACK_OVERFLOW                                           0x82EC
 #define GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB                                       0x82EC
 #define GL_TRANSFORM_FEEDBACK_PAUSED                                             0x8E23
 #define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN                                 0x8C88
 #define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT                             0x8C88
 #define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV                              0x8C88
 #define GL_TRANSFORM_FEEDBACK_RECORD_NV                                          0x8C86
+#define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW                                    0x82ED
 #define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB                                0x82ED
 #define GL_TRANSFORM_FEEDBACK_VARYING                                            0x92F4
 #define GL_TRANSFORM_FEEDBACK_VARYINGS                                           0x8C83
@@ -5364,9 +5486,11 @@ typedef void                   GLvoid;
 #define GL_UNSIGNED_SHORT_8_8_REV_APPLE                                          0x85BB
 #define GL_UNSIGNED_SHORT_8_8_REV_MESA                                           0x85BB
 #define GL_UPPER_LEFT                                                            0x8CA2
+#define GL_UPPER_LEFT_EXT                                                        0x8CA2
 #define GL_USE_MISSING_GLYPH_NV                                                  0x90AA
 #define GL_UTF16_NV                                                              0x909B
 #define GL_UTF8_NV                                                               0x909A
+#define GL_UUID_SIZE_EXT                                                         16
 #define GL_V2F                                                                   0x2A20
 #define GL_V3F                                                                   0x2A21
 #define GL_VALIDATE_STATUS                                                       0x8B83
@@ -5516,6 +5640,7 @@ typedef void                   GLvoid;
 #define GL_VERTEX_SHADER_EXT                                                     0x8780
 #define GL_VERTEX_SHADER_INSTRUCTIONS_EXT                                        0x87CF
 #define GL_VERTEX_SHADER_INVARIANTS_EXT                                          0x87D1
+#define GL_VERTEX_SHADER_INVOCATIONS                                             0x82F0
 #define GL_VERTEX_SHADER_INVOCATIONS_ARB                                         0x82F0
 #define GL_VERTEX_SHADER_LOCALS_EXT                                              0x87D3
 #define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT                                     0x87D2
@@ -5541,6 +5666,7 @@ typedef void                   GLvoid;
 #define GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT                                        0x850F
 #define GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT                                          0x850E
 #define GL_VERTICAL_LINE_TO_NV                                                   0x08
+#define GL_VERTICES_SUBMITTED                                                    0x82EE
 #define GL_VERTICES_SUBMITTED_ARB                                                0x82EE
 #define GL_VIBRANCE_BIAS_NV                                                      0x8719
 #define GL_VIBRANCE_SCALE_NV                                                     0x8713
@@ -5563,13 +5689,31 @@ typedef void                   GLvoid;
 #define GL_VIEWPORT_BOUNDS_RANGE                                                 0x825D
 #define GL_VIEWPORT_BOUNDS_RANGE_EXT                                             0x825D
 #define GL_VIEWPORT_BOUNDS_RANGE_NV                                              0x825D
+#define GL_VIEWPORT_BOUNDS_RANGE_OES                                             0x825D
 #define GL_VIEWPORT_COMMAND_NV                                                   0x0010
 #define GL_VIEWPORT_INDEX_PROVOKING_VERTEX                                       0x825F
 #define GL_VIEWPORT_INDEX_PROVOKING_VERTEX_EXT                                   0x825F
 #define GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV                                    0x825F
+#define GL_VIEWPORT_INDEX_PROVOKING_VERTEX_OES                                   0x825F
+#define GL_VIEWPORT_POSITION_W_SCALE_NV                                          0x937C
+#define GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV                                  0x937D
+#define GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV                                  0x937E
 #define GL_VIEWPORT_SUBPIXEL_BITS                                                0x825C
 #define GL_VIEWPORT_SUBPIXEL_BITS_EXT                                            0x825C
 #define GL_VIEWPORT_SUBPIXEL_BITS_NV                                             0x825C
+#define GL_VIEWPORT_SUBPIXEL_BITS_OES                                            0x825C
+#define GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV                                        0x9357
+#define GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV                                        0x9351
+#define GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV                                        0x9353
+#define GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV                                        0x9355
+#define GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV                                        0x9356
+#define GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV                                        0x9350
+#define GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV                                        0x9352
+#define GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV                                        0x9354
+#define GL_VIEWPORT_SWIZZLE_W_NV                                                 0x935B
+#define GL_VIEWPORT_SWIZZLE_X_NV                                                 0x9358
+#define GL_VIEWPORT_SWIZZLE_Y_NV                                                 0x9359
+#define GL_VIEWPORT_SWIZZLE_Z_NV                                                 0x935A
 #define GL_VIEW_CLASS_128_BITS                                                   0x82C4
 #define GL_VIEW_CLASS_16_BITS                                                    0x82CA
 #define GL_VIEW_CLASS_24_BITS                                                    0x82C9
@@ -5620,6 +5764,8 @@ typedef void                   GLvoid;
 #define GL_WEIGHT_ARRAY_TYPE_OES                                                 0x86A9
 #define GL_WEIGHT_SUM_UNITY_ARB                                                  0x86A6
 #define GL_WIDE_LINE_HINT_PGI                                                    0x1A222
+#define GL_WINDOW_RECTANGLE_EXT                                                  0x8F12
+#define GL_WINDOW_RECTANGLE_MODE_EXT                                             0x8F13
 #define GL_WRAP_BORDER_SUN                                                       0x81D4
 #define GL_WRITEONLY_RENDERING_QCOM                                              0x8823
 #define GL_WRITE_DISCARD_NV                                                      0x88BE
@@ -5651,6 +5797,7 @@ typedef void                   GLvoid;
 #define GL_ZERO                                                                  0
 #define GL_ZERO_EXT                                                              0x87DD
 #define GL_ZERO_TO_ONE                                                           0x935F
+#define GL_ZERO_TO_ONE_EXT                                                       0x935F
 #define GL_ZOOM_X                                                                0x0D16
 #define GL_ZOOM_Y                                                                0x0D17
 #define GL_Z_EXT                                                                 0x87D7
diff --git a/include/wine/wgl_driver.h b/include/wine/wgl_driver.h
index 283cf4a170..e07e8361ec 100644
--- a/include/wine/wgl_driver.h
+++ b/include/wine/wgl_driver.h
@@ -7,7 +7,7 @@
 #define WINE_GLAPI
 #endif
 
-#define WINE_WGL_DRIVER_VERSION 15
+#define WINE_WGL_DRIVER_VERSION 16
 
 struct wgl_context;
 struct wgl_pbuffer;
@@ -371,6 +371,7 @@ struct opengl_funcs
     struct
     {
         void       (WINE_GLAPI *p_glAccumxOES)(GLenum,GLfixed);
+        GLboolean  (WINE_GLAPI *p_glAcquireKeyedMutexWin32EXT)(GLuint,GLuint64,GLuint);
         void       (WINE_GLAPI *p_glActiveProgramEXT)(GLuint);
         void       (WINE_GLAPI *p_glActiveShaderProgram)(GLuint,GLuint);
         void       (WINE_GLAPI *p_glActiveStencilFaceEXT)(GLenum);
@@ -381,6 +382,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glAlphaFragmentOp2ATI)(GLenum,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint);
         void       (WINE_GLAPI *p_glAlphaFragmentOp3ATI)(GLenum,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint,GLuint);
         void       (WINE_GLAPI *p_glAlphaFuncxOES)(GLenum,GLfixed);
+        void       (WINE_GLAPI *p_glAlphaToCoverageDitherControlNV)(GLenum);
         void       (WINE_GLAPI *p_glApplyFramebufferAttachmentCMAAINTEL)(void);
         void       (WINE_GLAPI *p_glApplyTextureEXT)(GLenum);
         GLboolean  (WINE_GLAPI *p_glAreProgramsResidentNV)(GLsizei,const GLuint*,GLboolean*);
@@ -500,6 +502,8 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glBufferParameteriAPPLE)(GLenum,GLenum,GLint);
         GLuint     (WINE_GLAPI *p_glBufferRegionEnabled)(void);
         void       (WINE_GLAPI *p_glBufferStorage)(GLenum,GLsizeiptr,const void*,GLbitfield);
+        void       (WINE_GLAPI *p_glBufferStorageExternalEXT)(GLenum,GLintptr,GLsizeiptr,void *,GLbitfield);
+        void       (WINE_GLAPI *p_glBufferStorageMemEXT)(GLenum,GLsizeiptr,GLuint,GLuint64);
         void       (WINE_GLAPI *p_glBufferSubData)(GLenum,GLintptr,GLsizeiptr,const void*);
         void       (WINE_GLAPI *p_glBufferSubDataARB)(GLenum,GLintptrARB,GLsizeiptrARB,const void*);
         void       (WINE_GLAPI *p_glCallCommandListNV)(GLuint);
@@ -619,6 +623,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glCompressedTextureSubImage3D)(GLuint,GLint,GLint,GLint,GLint,GLsizei,GLsizei,GLsizei,GLenum,GLsizei,const void*);
         void       (WINE_GLAPI *p_glCompressedTextureSubImage3DEXT)(GLuint,GLenum,GLint,GLint,GLint,GLint,GLsizei,GLsizei,GLsizei,GLenum,GLsizei,const void*);
         void       (WINE_GLAPI *p_glConservativeRasterParameterfNV)(GLenum,GLfloat);
+        void       (WINE_GLAPI *p_glConservativeRasterParameteriNV)(GLenum,GLint);
         void       (WINE_GLAPI *p_glConvolutionFilter1D)(GLenum,GLenum,GLsizei,GLenum,GLenum,const void*);
         void       (WINE_GLAPI *p_glConvolutionFilter1DEXT)(GLenum,GLenum,GLsizei,GLenum,GLenum,const void*);
         void       (WINE_GLAPI *p_glConvolutionFilter2D)(GLenum,GLenum,GLsizei,GLsizei,GLenum,GLenum,const void*);
@@ -674,6 +679,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glCreateBuffers)(GLsizei,GLuint*);
         void       (WINE_GLAPI *p_glCreateCommandListsNV)(GLsizei,GLuint*);
         void       (WINE_GLAPI *p_glCreateFramebuffers)(GLsizei,GLuint*);
+        void       (WINE_GLAPI *p_glCreateMemoryObjectsEXT)(GLsizei,GLuint*);
         void       (WINE_GLAPI *p_glCreatePerfQueryINTEL)(GLuint,GLuint*);
         GLuint     (WINE_GLAPI *p_glCreateProgram)(void);
         GLhandleARB (WINE_GLAPI *p_glCreateProgramObjectARB)(void);
@@ -715,6 +721,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glDeleteFragmentShaderATI)(GLuint);
         void       (WINE_GLAPI *p_glDeleteFramebuffers)(GLsizei,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteFramebuffersEXT)(GLsizei,const GLuint*);
+        void       (WINE_GLAPI *p_glDeleteMemoryObjectsEXT)(GLsizei,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteNamedStringARB)(GLint,const GLchar*);
         void       (WINE_GLAPI *p_glDeleteNamesAMD)(GLenum,GLuint,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteObjectARB)(GLhandleARB);
@@ -729,9 +736,11 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glDeleteProgramsNV)(GLsizei,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteQueries)(GLsizei,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteQueriesARB)(GLsizei,const GLuint*);
+        void       (WINE_GLAPI *p_glDeleteQueryResourceTagNV)(GLsizei,const GLint*);
         void       (WINE_GLAPI *p_glDeleteRenderbuffers)(GLsizei,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteRenderbuffersEXT)(GLsizei,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteSamplers)(GLsizei,const GLuint*);
+        void       (WINE_GLAPI *p_glDeleteSemaphoresEXT)(GLsizei,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteShader)(GLuint);
         void       (WINE_GLAPI *p_glDeleteStatesNV)(GLsizei,const GLuint*);
         void       (WINE_GLAPI *p_glDeleteSync)(GLsync);
@@ -802,6 +811,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glDrawTransformFeedbackNV)(GLenum,GLuint);
         void       (WINE_GLAPI *p_glDrawTransformFeedbackStream)(GLenum,GLuint,GLuint);
         void       (WINE_GLAPI *p_glDrawTransformFeedbackStreamInstanced)(GLenum,GLuint,GLuint,GLsizei);
+        void       (WINE_GLAPI *p_glDrawVkImageNV)(GLuint64,GLuint,GLfloat,GLfloat,GLfloat,GLfloat,GLfloat,GLfloat,GLfloat,GLfloat,GLfloat);
         void       (WINE_GLAPI *p_glEdgeFlagFormatNV)(GLsizei);
         void       (WINE_GLAPI *p_glEdgeFlagPointerEXT)(GLsizei,GLsizei,const GLboolean*);
         void       (WINE_GLAPI *p_glEdgeFlagPointerListIBM)(GLint,const GLboolean**,GLint);
@@ -899,6 +909,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glFramebufferRenderbufferEXT)(GLenum,GLenum,GLenum,GLuint);
         void       (WINE_GLAPI *p_glFramebufferSampleLocationsfvARB)(GLenum,GLuint,GLsizei,const GLfloat*);
         void       (WINE_GLAPI *p_glFramebufferSampleLocationsfvNV)(GLenum,GLuint,GLsizei,const GLfloat*);
+        void       (WINE_GLAPI *p_glFramebufferSamplePositionsfvAMD)(GLenum,GLuint,GLuint,const GLfloat*);
         void       (WINE_GLAPI *p_glFramebufferTexture)(GLenum,GLenum,GLuint,GLint);
         void       (WINE_GLAPI *p_glFramebufferTexture1D)(GLenum,GLenum,GLenum,GLuint,GLint);
         void       (WINE_GLAPI *p_glFramebufferTexture1DEXT)(GLenum,GLenum,GLenum,GLuint,GLint);
@@ -934,9 +945,11 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glGenProgramsNV)(GLsizei,GLuint*);
         void       (WINE_GLAPI *p_glGenQueries)(GLsizei,GLuint*);
         void       (WINE_GLAPI *p_glGenQueriesARB)(GLsizei,GLuint*);
+        void       (WINE_GLAPI *p_glGenQueryResourceTagNV)(GLsizei,GLint*);
         void       (WINE_GLAPI *p_glGenRenderbuffers)(GLsizei,GLuint*);
         void       (WINE_GLAPI *p_glGenRenderbuffersEXT)(GLsizei,GLuint*);
         void       (WINE_GLAPI *p_glGenSamplers)(GLsizei,GLuint*);
+        void       (WINE_GLAPI *p_glGenSemaphoresEXT)(GLsizei,GLuint*);
         GLuint     (WINE_GLAPI *p_glGenSymbolsEXT)(GLenum,GLenum,GLenum,GLuint);
         void       (WINE_GLAPI *p_glGenTexturesEXT)(GLsizei,GLuint*);
         void       (WINE_GLAPI *p_glGenTransformFeedbacks)(GLsizei,GLuint*);
@@ -1034,6 +1047,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glGetFragmentMaterialivSGIX)(GLenum,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetFramebufferAttachmentParameteriv)(GLenum,GLenum,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetFramebufferAttachmentParameterivEXT)(GLenum,GLenum,GLenum,GLint*);
+        void       (WINE_GLAPI *p_glGetFramebufferParameterfvAMD)(GLenum,GLenum,GLuint,GLuint,GLsizei,GLfloat*);
         void       (WINE_GLAPI *p_glGetFramebufferParameteriv)(GLenum,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetFramebufferParameterivEXT)(GLuint,GLenum,GLint*);
         GLenum     (WINE_GLAPI *p_glGetGraphicsResetStatus)(void);
@@ -1077,6 +1091,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glGetMapParameterivNV)(GLenum,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetMapxvOES)(GLenum,GLenum,GLfixed*);
         void       (WINE_GLAPI *p_glGetMaterialxOES)(GLenum,GLenum,GLfixed);
+        void       (WINE_GLAPI *p_glGetMemoryObjectParameterivEXT)(GLuint,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetMinmax)(GLenum,GLboolean,GLenum,GLenum,void*);
         void       (WINE_GLAPI *p_glGetMinmaxEXT)(GLenum,GLboolean,GLenum,GLenum,void*);
         void       (WINE_GLAPI *p_glGetMinmaxParameterfv)(GLenum,GLenum,GLfloat*);
@@ -1107,6 +1122,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glGetNamedBufferSubDataEXT)(GLuint,GLintptr,GLsizeiptr,void*);
         void       (WINE_GLAPI *p_glGetNamedFramebufferAttachmentParameteriv)(GLuint,GLenum,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetNamedFramebufferAttachmentParameterivEXT)(GLuint,GLenum,GLenum,GLint*);
+        void       (WINE_GLAPI *p_glGetNamedFramebufferParameterfvAMD)(GLuint,GLenum,GLuint,GLuint,GLsizei,GLfloat*);
         void       (WINE_GLAPI *p_glGetNamedFramebufferParameteriv)(GLuint,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetNamedFramebufferParameterivEXT)(GLuint,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetNamedProgramLocalParameterIivEXT)(GLuint,GLenum,GLuint,GLint*);
@@ -1212,6 +1228,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glGetSamplerParameterIuiv)(GLuint,GLenum,GLuint*);
         void       (WINE_GLAPI *p_glGetSamplerParameterfv)(GLuint,GLenum,GLfloat*);
         void       (WINE_GLAPI *p_glGetSamplerParameteriv)(GLuint,GLenum,GLint*);
+        void       (WINE_GLAPI *p_glGetSemaphoreParameterui64vEXT)(GLuint,GLenum,GLuint64*);
         void       (WINE_GLAPI *p_glGetSeparableFilter)(GLenum,GLenum,GLenum,void*,void*,void*);
         void       (WINE_GLAPI *p_glGetSeparableFilterEXT)(GLenum,GLenum,GLenum,void*,void*,void*);
         void       (WINE_GLAPI *p_glGetShaderInfoLog)(GLuint,GLsizei,GLsizei*,GLchar*);
@@ -1281,6 +1298,8 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glGetUniformui64vNV)(GLuint,GLint,GLuint64EXT*);
         void       (WINE_GLAPI *p_glGetUniformuiv)(GLuint,GLint,GLuint*);
         void       (WINE_GLAPI *p_glGetUniformuivEXT)(GLuint,GLint,GLuint*);
+        void       (WINE_GLAPI *p_glGetUnsignedBytei_vEXT)(GLenum,GLuint,GLubyte*);
+        void       (WINE_GLAPI *p_glGetUnsignedBytevEXT)(GLenum,GLubyte*);
         void       (WINE_GLAPI *p_glGetVariantArrayObjectfvATI)(GLuint,GLenum,GLfloat*);
         void       (WINE_GLAPI *p_glGetVariantArrayObjectivATI)(GLuint,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetVariantBooleanvEXT)(GLuint,GLenum,GLboolean*);
@@ -1326,6 +1345,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glGetVideoivNV)(GLuint,GLenum,GLint*);
         void       (WINE_GLAPI *p_glGetVideoui64vNV)(GLuint,GLenum,GLuint64EXT*);
         void       (WINE_GLAPI *p_glGetVideouivNV)(GLuint,GLenum,GLuint*);
+        void *     (WINE_GLAPI *p_glGetVkProcAddrNV)(const GLchar*);
         void       (WINE_GLAPI *p_glGetnColorTable)(GLenum,GLenum,GLenum,GLsizei,void*);
         void       (WINE_GLAPI *p_glGetnColorTableARB)(GLenum,GLenum,GLenum,GLsizei,void*);
         void       (WINE_GLAPI *p_glGetnCompressedTexImage)(GLenum,GLint,GLsizei,void*);
@@ -1380,6 +1400,12 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glImageTransformParameterfvHP)(GLenum,GLenum,const GLfloat*);
         void       (WINE_GLAPI *p_glImageTransformParameteriHP)(GLenum,GLenum,GLint);
         void       (WINE_GLAPI *p_glImageTransformParameterivHP)(GLenum,GLenum,const GLint*);
+        void       (WINE_GLAPI *p_glImportMemoryFdEXT)(GLuint,GLuint64,GLenum,GLint);
+        void       (WINE_GLAPI *p_glImportMemoryWin32HandleEXT)(GLuint,GLuint64,GLenum,void*);
+        void       (WINE_GLAPI *p_glImportMemoryWin32NameEXT)(GLuint,GLuint64,GLenum,const void*);
+        void       (WINE_GLAPI *p_glImportSemaphoreFdEXT)(GLuint,GLenum,GLint);
+        void       (WINE_GLAPI *p_glImportSemaphoreWin32HandleEXT)(GLuint,GLenum,void*);
+        void       (WINE_GLAPI *p_glImportSemaphoreWin32NameEXT)(GLuint,GLenum,const void*);
         GLsync     (WINE_GLAPI *p_glImportSyncEXT)(GLenum,GLintptr,GLbitfield);
         void       (WINE_GLAPI *p_glIndexFormatNV)(GLenum,GLsizei);
         void       (WINE_GLAPI *p_glIndexFuncEXT)(GLenum,GLclampf);
@@ -1413,6 +1439,7 @@ struct opengl_funcs
         GLboolean  (WINE_GLAPI *p_glIsFramebufferEXT)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsImageHandleResidentARB)(GLuint64);
         GLboolean  (WINE_GLAPI *p_glIsImageHandleResidentNV)(GLuint64);
+        GLboolean  (WINE_GLAPI *p_glIsMemoryObjectEXT)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsNameAMD)(GLenum,GLuint);
         GLboolean  (WINE_GLAPI *p_glIsNamedBufferResidentNV)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsNamedStringARB)(GLint,const GLchar*);
@@ -1430,6 +1457,7 @@ struct opengl_funcs
         GLboolean  (WINE_GLAPI *p_glIsRenderbuffer)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsRenderbufferEXT)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsSampler)(GLuint);
+        GLboolean  (WINE_GLAPI *p_glIsSemaphoreEXT)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsShader)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsStateNV)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsSync)(GLsync);
@@ -1442,6 +1470,9 @@ struct opengl_funcs
         GLboolean  (WINE_GLAPI *p_glIsVertexArray)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsVertexArrayAPPLE)(GLuint);
         GLboolean  (WINE_GLAPI *p_glIsVertexAttribEnabledAPPLE)(GLuint,GLenum);
+        void       (WINE_GLAPI *p_glLGPUCopyImageSubDataNVX)(GLuint,GLbitfield,GLuint,GLenum,GLint,GLint,GLint,GLint,GLuint,GLenum,GLint,GLint,GLint,GLint,GLsizei,GLsizei,GLsizei);
+        void       (WINE_GLAPI *p_glLGPUInterlockNVX)(void);
+        void       (WINE_GLAPI *p_glLGPUNamedBufferSubDataNVX)(GLbitfield,GLuint,GLintptr,GLsizeiptr,const void*);
         void       (WINE_GLAPI *p_glLabelObjectEXT)(GLenum,GLuint,GLsizei,const GLchar*);
         void       (WINE_GLAPI *p_glLightEnviSGIX)(GLenum,GLint);
         void       (WINE_GLAPI *p_glLightModelxOES)(GLenum,GLfixed);
@@ -1531,9 +1562,11 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glMatrixTranslatedEXT)(GLenum,GLdouble,GLdouble,GLdouble);
         void       (WINE_GLAPI *p_glMatrixTranslatefEXT)(GLenum,GLfloat,GLfloat,GLfloat);
         void       (WINE_GLAPI *p_glMaxShaderCompilerThreadsARB)(GLuint);
+        void       (WINE_GLAPI *p_glMaxShaderCompilerThreadsKHR)(GLuint);
         void       (WINE_GLAPI *p_glMemoryBarrier)(GLbitfield);
         void       (WINE_GLAPI *p_glMemoryBarrierByRegion)(GLbitfield);
         void       (WINE_GLAPI *p_glMemoryBarrierEXT)(GLbitfield);
+        void       (WINE_GLAPI *p_glMemoryObjectParameterivEXT)(GLuint,GLenum,const GLint*);
         void       (WINE_GLAPI *p_glMinSampleShading)(GLfloat);
         void       (WINE_GLAPI *p_glMinSampleShadingARB)(GLfloat);
         void       (WINE_GLAPI *p_glMinmax)(GLenum,GLenum,GLboolean);
@@ -1550,7 +1583,8 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glMultiDrawArraysIndirectAMD)(GLenum,const void*,GLsizei,GLsizei);
         void       (WINE_GLAPI *p_glMultiDrawArraysIndirectBindlessCountNV)(GLenum,const void*,GLsizei,GLsizei,GLsizei,GLint);
         void       (WINE_GLAPI *p_glMultiDrawArraysIndirectBindlessNV)(GLenum,const void*,GLsizei,GLsizei,GLint);
-        void       (WINE_GLAPI *p_glMultiDrawArraysIndirectCountARB)(GLenum,GLintptr,GLintptr,GLsizei,GLsizei);
+        void       (WINE_GLAPI *p_glMultiDrawArraysIndirectCount)(GLenum,const void*,GLintptr,GLsizei,GLsizei);
+        void       (WINE_GLAPI *p_glMultiDrawArraysIndirectCountARB)(GLenum,const void*,GLintptr,GLsizei,GLsizei);
         void       (WINE_GLAPI *p_glMultiDrawElementArrayAPPLE)(GLenum,const GLint*,const GLsizei*,GLsizei);
         void       (WINE_GLAPI *p_glMultiDrawElements)(GLenum,const GLsizei*,GLenum,const void*const*,GLsizei);
         void       (WINE_GLAPI *p_glMultiDrawElementsBaseVertex)(GLenum,const GLsizei*,GLenum,const void*const*,GLsizei,const GLint*);
@@ -1559,7 +1593,8 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glMultiDrawElementsIndirectAMD)(GLenum,GLenum,const void*,GLsizei,GLsizei);
         void       (WINE_GLAPI *p_glMultiDrawElementsIndirectBindlessCountNV)(GLenum,GLenum,const void*,GLsizei,GLsizei,GLsizei,GLint);
         void       (WINE_GLAPI *p_glMultiDrawElementsIndirectBindlessNV)(GLenum,GLenum,const void*,GLsizei,GLsizei,GLint);
-        void       (WINE_GLAPI *p_glMultiDrawElementsIndirectCountARB)(GLenum,GLenum,GLintptr,GLintptr,GLsizei,GLsizei);
+        void       (WINE_GLAPI *p_glMultiDrawElementsIndirectCount)(GLenum,GLenum,const void*,GLintptr,GLsizei,GLsizei);
+        void       (WINE_GLAPI *p_glMultiDrawElementsIndirectCountARB)(GLenum,GLenum,const void*,GLintptr,GLsizei,GLsizei);
         void       (WINE_GLAPI *p_glMultiDrawRangeElementArrayAPPLE)(GLenum,GLuint,GLuint,const GLint*,const GLsizei*,GLsizei);
         void       (WINE_GLAPI *p_glMultiModeDrawArraysIBM)(const GLenum*,const GLint*,const GLsizei*,GLsizei,GLint);
         void       (WINE_GLAPI *p_glMultiModeDrawElementsIBM)(const GLenum*,const GLsizei*,GLenum,const void*const*,GLsizei,GLint);
@@ -1717,12 +1752,25 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glMultiTexSubImage1DEXT)(GLenum,GLenum,GLint,GLint,GLsizei,GLenum,GLenum,const void*);
         void       (WINE_GLAPI *p_glMultiTexSubImage2DEXT)(GLenum,GLenum,GLint,GLint,GLint,GLsizei,GLsizei,GLenum,GLenum,const void*);
         void       (WINE_GLAPI *p_glMultiTexSubImage3DEXT)(GLenum,GLenum,GLint,GLint,GLint,GLint,GLsizei,GLsizei,GLsizei,GLenum,GLenum,const void*);
+        void       (WINE_GLAPI *p_glMulticastBarrierNV)(void);
+        void       (WINE_GLAPI *p_glMulticastBlitFramebufferNV)(GLuint,GLuint,GLint,GLint,GLint,GLint,GLint,GLint,GLint,GLint,GLbitfield,GLenum);
+        void       (WINE_GLAPI *p_glMulticastBufferSubDataNV)(GLbitfield,GLuint,GLintptr,GLsizeiptr,const GLvoid*);
+        void       (WINE_GLAPI *p_glMulticastCopyBufferSubDataNV)(GLuint,GLbitfield,GLuint,GLuint,GLintptr,GLintptr,GLsizeiptr);
+        void       (WINE_GLAPI *p_glMulticastCopyImageSubDataNV)(GLuint,GLbitfield,GLuint,GLenum,GLint,GLint,GLint,GLint,GLuint,GLenum,GLint,GLint,GLint,GLint,GLsizei,GLsizei,GLsizei);
+        void       (WINE_GLAPI *p_glMulticastFramebufferSampleLocationsfvNV)(GLuint,GLuint,GLuint,GLsizei,const GLfloat*);
+        void       (WINE_GLAPI *p_glMulticastGetQueryObjecti64vNV)(GLuint,GLuint,GLenum,GLint64*);
+        void       (WINE_GLAPI *p_glMulticastGetQueryObjectivNV)(GLuint,GLuint,GLenum,GLint*);
+        void       (WINE_GLAPI *p_glMulticastGetQueryObjectui64vNV)(GLuint,GLuint,GLenum,GLuint64*);
+        void       (WINE_GLAPI *p_glMulticastGetQueryObjectuivNV)(GLuint,GLuint,GLenum,GLuint*);
+        void       (WINE_GLAPI *p_glMulticastWaitSyncNV)(GLuint,GLbitfield);
         void       (WINE_GLAPI *p_glNamedBufferData)(GLuint,GLsizeiptr,const void*,GLenum);
         void       (WINE_GLAPI *p_glNamedBufferDataEXT)(GLuint,GLsizeiptr,const void*,GLenum);
         void       (WINE_GLAPI *p_glNamedBufferPageCommitmentARB)(GLuint,GLintptr,GLsizeiptr,GLboolean);
         void       (WINE_GLAPI *p_glNamedBufferPageCommitmentEXT)(GLuint,GLintptr,GLsizeiptr,GLboolean);
         void       (WINE_GLAPI *p_glNamedBufferStorage)(GLuint,GLsizeiptr,const void*,GLbitfield);
         void       (WINE_GLAPI *p_glNamedBufferStorageEXT)(GLuint,GLsizeiptr,const void*,GLbitfield);
+        void       (WINE_GLAPI *p_glNamedBufferStorageExternalEXT)(GLuint,GLintptr,GLsizeiptr,void *,GLbitfield);
+        void       (WINE_GLAPI *p_glNamedBufferStorageMemEXT)(GLuint,GLsizeiptr,GLuint,GLuint64);
         void       (WINE_GLAPI *p_glNamedBufferSubData)(GLuint,GLintptr,GLsizeiptr,const void*);
         void       (WINE_GLAPI *p_glNamedBufferSubDataEXT)(GLuint,GLintptr,GLsizeiptr,const void*);
         void       (WINE_GLAPI *p_glNamedCopyBufferSubDataEXT)(GLuint,GLuint,GLintptr,GLintptr,GLsizeiptr);
@@ -1735,6 +1783,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glNamedFramebufferRenderbufferEXT)(GLuint,GLenum,GLenum,GLuint);
         void       (WINE_GLAPI *p_glNamedFramebufferSampleLocationsfvARB)(GLuint,GLuint,GLsizei,const GLfloat*);
         void       (WINE_GLAPI *p_glNamedFramebufferSampleLocationsfvNV)(GLuint,GLuint,GLsizei,const GLfloat*);
+        void       (WINE_GLAPI *p_glNamedFramebufferSamplePositionsfvAMD)(GLuint,GLuint,GLuint,const GLfloat*);
         void       (WINE_GLAPI *p_glNamedFramebufferTexture)(GLuint,GLenum,GLuint,GLint);
         void       (WINE_GLAPI *p_glNamedFramebufferTexture1DEXT)(GLuint,GLenum,GLenum,GLuint,GLint);
         void       (WINE_GLAPI *p_glNamedFramebufferTexture2DEXT)(GLuint,GLenum,GLenum,GLuint,GLint);
@@ -1851,6 +1900,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glPointSizexOES)(GLfixed);
         GLint      (WINE_GLAPI *p_glPollAsyncSGIX)(GLuint*);
         GLint      (WINE_GLAPI *p_glPollInstrumentsSGIX)(GLint*);
+        void       (WINE_GLAPI *p_glPolygonOffsetClamp)(GLfloat,GLfloat,GLfloat);
         void       (WINE_GLAPI *p_glPolygonOffsetClampEXT)(GLfloat,GLfloat,GLfloat);
         void       (WINE_GLAPI *p_glPolygonOffsetEXT)(GLfloat,GLfloat);
         void       (WINE_GLAPI *p_glPolygonOffsetxOES)(GLfixed,GLfixed);
@@ -2053,6 +2103,8 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glQueryCounter)(GLuint,GLenum);
         GLbitfield (WINE_GLAPI *p_glQueryMatrixxOES)(GLfixed*,GLint*);
         void       (WINE_GLAPI *p_glQueryObjectParameteruiAMD)(GLenum,GLuint,GLenum,GLuint);
+        GLint      (WINE_GLAPI *p_glQueryResourceNV)(GLenum,GLint,GLuint,GLint*);
+        void       (WINE_GLAPI *p_glQueryResourceTagNV)(GLint,const GLchar*);
         void       (WINE_GLAPI *p_glRasterPos2xOES)(GLfixed,GLfixed);
         void       (WINE_GLAPI *p_glRasterPos2xvOES)(const GLfixed*);
         void       (WINE_GLAPI *p_glRasterPos3xOES)(GLfixed,GLfixed,GLfixed);
@@ -2067,7 +2119,9 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glRectxOES)(GLfixed,GLfixed,GLfixed,GLfixed);
         void       (WINE_GLAPI *p_glRectxvOES)(const GLfixed*,const GLfixed*);
         void       (WINE_GLAPI *p_glReferencePlaneSGIX)(const GLdouble*);
+        GLboolean  (WINE_GLAPI *p_glReleaseKeyedMutexWin32EXT)(GLuint,GLuint64);
         void       (WINE_GLAPI *p_glReleaseShaderCompiler)(void);
+        void       (WINE_GLAPI *p_glRenderGpuMaskNV)(GLbitfield);
         void       (WINE_GLAPI *p_glRenderbufferStorage)(GLenum,GLenum,GLsizei,GLsizei);
         void       (WINE_GLAPI *p_glRenderbufferStorageEXT)(GLenum,GLenum,GLsizei,GLsizei);
         void       (WINE_GLAPI *p_glRenderbufferStorageMultisample)(GLenum,GLsizei,GLenum,GLsizei,GLsizei);
@@ -2168,6 +2222,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glSelectPerfMonitorCountersAMD)(GLuint,GLboolean,GLuint,GLint,GLuint*);
         void       (WINE_GLAPI *p_glSelectTextureCoordSetSGIS)(GLenum);
         void       (WINE_GLAPI *p_glSelectTextureSGIS)(GLenum);
+        void       (WINE_GLAPI *p_glSemaphoreParameterui64vEXT)(GLuint,GLenum,const GLuint64*);
         void       (WINE_GLAPI *p_glSeparableFilter2D)(GLenum,GLenum,GLsizei,GLsizei,GLenum,GLenum,const void*,const void*);
         void       (WINE_GLAPI *p_glSeparableFilter2DEXT)(GLenum,GLenum,GLsizei,GLsizei,GLenum,GLenum,const void*,const void*);
         void       (WINE_GLAPI *p_glSetFenceAPPLE)(GLuint);
@@ -2184,6 +2239,11 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glShaderSourceARB)(GLhandleARB,GLsizei,const GLcharARB**,const GLint*);
         void       (WINE_GLAPI *p_glShaderStorageBlockBinding)(GLuint,GLuint,GLuint);
         void       (WINE_GLAPI *p_glSharpenTexFuncSGIS)(GLenum,GLsizei,const GLfloat*);
+        void       (WINE_GLAPI *p_glSignalSemaphoreEXT)(GLuint,GLuint,const GLuint*,GLuint,const GLuint*,const GLenum*);
+        void       (WINE_GLAPI *p_glSignalVkFenceNV)(GLuint64);
+        void       (WINE_GLAPI *p_glSignalVkSemaphoreNV)(GLuint64);
+        void       (WINE_GLAPI *p_glSpecializeShader)(GLuint,const GLchar*,GLuint,const GLuint*,const GLuint*);
+        void       (WINE_GLAPI *p_glSpecializeShaderARB)(GLuint,const GLchar*,GLuint,const GLuint*,const GLuint*);
         void       (WINE_GLAPI *p_glSpriteParameterfSGIX)(GLenum,GLfloat);
         void       (WINE_GLAPI *p_glSpriteParameterfvSGIX)(GLenum,const GLfloat*);
         void       (WINE_GLAPI *p_glSpriteParameteriSGIX)(GLenum,GLint);
@@ -2309,6 +2369,11 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glTexStorage2DMultisample)(GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLboolean);
         void       (WINE_GLAPI *p_glTexStorage3D)(GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLsizei);
         void       (WINE_GLAPI *p_glTexStorage3DMultisample)(GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLsizei,GLboolean);
+        void       (WINE_GLAPI *p_glTexStorageMem1DEXT)(GLenum,GLsizei,GLenum,GLsizei,GLuint,GLuint64);
+        void       (WINE_GLAPI *p_glTexStorageMem2DEXT)(GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLuint,GLuint64);
+        void       (WINE_GLAPI *p_glTexStorageMem2DMultisampleEXT)(GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLboolean,GLuint,GLuint64);
+        void       (WINE_GLAPI *p_glTexStorageMem3DEXT)(GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLsizei,GLuint,GLuint64);
+        void       (WINE_GLAPI *p_glTexStorageMem3DMultisampleEXT)(GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLsizei,GLboolean,GLuint,GLuint64);
         void       (WINE_GLAPI *p_glTexStorageSparseAMD)(GLenum,GLenum,GLsizei,GLsizei,GLsizei,GLsizei,GLbitfield);
         void       (WINE_GLAPI *p_glTexSubImage1DEXT)(GLenum,GLint,GLint,GLsizei,GLenum,GLenum,const void*);
         void       (WINE_GLAPI *p_glTexSubImage2DEXT)(GLenum,GLint,GLint,GLint,GLsizei,GLsizei,GLenum,GLenum,const void*);
@@ -2357,6 +2422,11 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glTextureStorage3DEXT)(GLuint,GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLsizei);
         void       (WINE_GLAPI *p_glTextureStorage3DMultisample)(GLuint,GLsizei,GLenum,GLsizei,GLsizei,GLsizei,GLboolean);
         void       (WINE_GLAPI *p_glTextureStorage3DMultisampleEXT)(GLuint,GLenum,GLsizei,GLenum,GLsizei,GLsizei,GLsizei,GLboolean);
+        void       (WINE_GLAPI *p_glTextureStorageMem1DEXT)(GLuint,GLsizei,GLenum,GLsizei,GLuint,GLuint64);
+        void       (WINE_GLAPI *p_glTextureStorageMem2DEXT)(GLuint,GLsizei,GLenum,GLsizei,GLsizei,GLuint,GLuint64);
+        void       (WINE_GLAPI *p_glTextureStorageMem2DMultisampleEXT)(GLuint,GLsizei,GLenum,GLsizei,GLsizei,GLboolean,GLuint,GLuint64);
+        void       (WINE_GLAPI *p_glTextureStorageMem3DEXT)(GLuint,GLsizei,GLenum,GLsizei,GLsizei,GLsizei,GLuint,GLuint64);
+        void       (WINE_GLAPI *p_glTextureStorageMem3DMultisampleEXT)(GLuint,GLsizei,GLenum,GLsizei,GLsizei,GLsizei,GLboolean,GLuint,GLuint64);
         void       (WINE_GLAPI *p_glTextureStorageSparseAMD)(GLuint,GLenum,GLenum,GLsizei,GLsizei,GLsizei,GLsizei,GLbitfield);
         void       (WINE_GLAPI *p_glTextureSubImage1D)(GLuint,GLint,GLint,GLsizei,GLenum,GLenum,const void*);
         void       (WINE_GLAPI *p_glTextureSubImage1DEXT)(GLuint,GLenum,GLint,GLint,GLsizei,GLenum,GLenum,const void*);
@@ -2857,7 +2927,11 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glViewportArrayv)(GLuint,GLsizei,const GLfloat*);
         void       (WINE_GLAPI *p_glViewportIndexedf)(GLuint,GLfloat,GLfloat,GLfloat,GLfloat);
         void       (WINE_GLAPI *p_glViewportIndexedfv)(GLuint,const GLfloat*);
+        void       (WINE_GLAPI *p_glViewportPositionWScaleNV)(GLuint,GLfloat,GLfloat);
+        void       (WINE_GLAPI *p_glViewportSwizzleNV)(GLuint,GLenum,GLenum,GLenum,GLenum);
+        void       (WINE_GLAPI *p_glWaitSemaphoreEXT)(GLuint,GLuint,const GLuint*,GLuint,const GLuint*,const GLenum*);
         void       (WINE_GLAPI *p_glWaitSync)(GLsync,GLbitfield,GLuint64);
+        void       (WINE_GLAPI *p_glWaitVkSemaphoreNV)(GLuint64);
         void       (WINE_GLAPI *p_glWeightPathsNV)(GLuint,GLsizei,const GLuint*,const GLfloat*);
         void       (WINE_GLAPI *p_glWeightPointerARB)(GLint,GLenum,GLsizei,const void*);
         void       (WINE_GLAPI *p_glWeightbvARB)(GLint,const GLbyte*);
@@ -2924,6 +2998,7 @@ struct opengl_funcs
         void       (WINE_GLAPI *p_glWindowPos4ivMESA)(const GLint*);
         void       (WINE_GLAPI *p_glWindowPos4sMESA)(GLshort,GLshort,GLshort,GLshort);
         void       (WINE_GLAPI *p_glWindowPos4svMESA)(const GLshort*);
+        void       (WINE_GLAPI *p_glWindowRectanglesEXT)(GLenum,GLsizei,const GLint*);
         void       (WINE_GLAPI *p_glWriteMaskEXT)(GLuint,GLuint,GLenum,GLenum,GLenum,GLenum);
         void*      (WINE_GLAPI *p_wglAllocateMemoryNV)(GLsizei,GLfloat,GLfloat,GLfloat);
         BOOL       (WINE_GLAPI *p_wglBindTexImageARB)(struct wgl_pbuffer *,int);
-- 
2.13.5




More information about the wine-patches mailing list