diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,10 @@
+3.3.1.0
+-------
+* Updated OpenGL registry to accf5ad3c.
+
 3.3.0.2
 -------
-* Updated OpenGL registry tob7aee529f.
+* Updated OpenGL registry to b7aee529f.
 * Relaxed version bound of `containers` package.
 
 3.3.0.1
diff --git a/OpenGLRaw.cabal b/OpenGLRaw.cabal
--- a/OpenGLRaw.cabal
+++ b/OpenGLRaw.cabal
@@ -1,5 +1,5 @@
 name: OpenGLRaw
-version: 3.3.0.2
+version: 3.3.1.0
 synopsis: A raw binding for the OpenGL graphics system
 description:
   OpenGLRaw is a raw Haskell binding for the OpenGL 4.6 graphics system and
@@ -77,6 +77,7 @@
     Graphics.GL.AMD.DebugOutput
     Graphics.GL.AMD.DepthClampSeparate
     Graphics.GL.AMD.DrawBuffersBlend
+    Graphics.GL.AMD.FramebufferMultisampleAdvanced
     Graphics.GL.AMD.FramebufferSamplePositions
     Graphics.GL.AMD.GPUShaderHalfFloat
     Graphics.GL.AMD.GPUShaderInt64
diff --git a/RegistryProcessor/OpenGL-Registry/xml/gl.xml b/RegistryProcessor/OpenGL-Registry/xml/gl.xml
# file too large to diff: RegistryProcessor/OpenGL-Registry/xml/gl.xml
diff --git a/src/Graphics/GL/AMD.hs b/src/Graphics/GL/AMD.hs
--- a/src/Graphics/GL/AMD.hs
+++ b/src/Graphics/GL/AMD.hs
@@ -17,6 +17,7 @@
   module Graphics.GL.AMD.DebugOutput,
   module Graphics.GL.AMD.DepthClampSeparate,
   module Graphics.GL.AMD.DrawBuffersBlend,
+  module Graphics.GL.AMD.FramebufferMultisampleAdvanced,
   module Graphics.GL.AMD.FramebufferSamplePositions,
   module Graphics.GL.AMD.GPUShaderHalfFloat,
   module Graphics.GL.AMD.GPUShaderInt64,
@@ -39,6 +40,7 @@
 import Graphics.GL.AMD.DebugOutput
 import Graphics.GL.AMD.DepthClampSeparate
 import Graphics.GL.AMD.DrawBuffersBlend
+import Graphics.GL.AMD.FramebufferMultisampleAdvanced
 import Graphics.GL.AMD.FramebufferSamplePositions
 import Graphics.GL.AMD.GPUShaderHalfFloat
 import Graphics.GL.AMD.GPUShaderInt64
diff --git a/src/Graphics/GL/AMD/FramebufferMultisampleAdvanced.hs b/src/Graphics/GL/AMD/FramebufferMultisampleAdvanced.hs
new file mode 100644
--- /dev/null
+++ b/src/Graphics/GL/AMD/FramebufferMultisampleAdvanced.hs
@@ -0,0 +1,32 @@
+{-# LANGUAGE PatternSynonyms #-}
+--------------------------------------------------------------------------------
+-- |
+-- Module      :  Graphics.GL.AMD.FramebufferMultisampleAdvanced
+-- Copyright   :  (c) Sven Panne 2018
+-- License     :  BSD3
+--
+-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
+-- Stability   :  stable
+-- Portability :  portable
+--
+--------------------------------------------------------------------------------
+
+module Graphics.GL.AMD.FramebufferMultisampleAdvanced (
+  -- * Extension Support
+  glGetAMDFramebufferMultisampleAdvanced,
+  gl_AMD_framebuffer_multisample_advanced,
+  -- * Enums
+  pattern GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD,
+  pattern GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD,
+  pattern GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD,
+  pattern GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD,
+  pattern GL_RENDERBUFFER_STORAGE_SAMPLES_AMD,
+  pattern GL_SUPPORTED_MULTISAMPLE_MODES_AMD,
+  -- * Functions
+  glNamedRenderbufferStorageMultisampleAdvancedAMD,
+  glRenderbufferStorageMultisampleAdvancedAMD
+) where
+
+import Graphics.GL.ExtensionPredicates
+import Graphics.GL.Tokens
+import Graphics.GL.Functions
diff --git a/src/Graphics/GL/Core30.hs b/src/Graphics/GL/Core30.hs
--- a/src/Graphics/GL/Core30.hs
+++ b/src/Graphics/GL/Core30.hs
@@ -431,6 +431,7 @@
   pattern GL_HINT_BIT,
   pattern GL_INCR,
   pattern GL_INCR_WRAP,
+  pattern GL_INDEX,
   pattern GL_INDEX_ARRAY,
   pattern GL_INDEX_ARRAY_BUFFER_BINDING,
   pattern GL_INDEX_ARRAY_POINTER,
@@ -1034,9 +1035,11 @@
   pattern GL_TEXTURE_GREEN_TYPE,
   pattern GL_TEXTURE_HEIGHT,
   pattern GL_TEXTURE_INTENSITY_SIZE,
+  pattern GL_TEXTURE_INTENSITY_TYPE,
   pattern GL_TEXTURE_INTERNAL_FORMAT,
   pattern GL_TEXTURE_LOD_BIAS,
   pattern GL_TEXTURE_LUMINANCE_SIZE,
+  pattern GL_TEXTURE_LUMINANCE_TYPE,
   pattern GL_TEXTURE_MAG_FILTER,
   pattern GL_TEXTURE_MATRIX,
   pattern GL_TEXTURE_MAX_LEVEL,
diff --git a/src/Graphics/GL/Core31.hs b/src/Graphics/GL/Core31.hs
--- a/src/Graphics/GL/Core31.hs
+++ b/src/Graphics/GL/Core31.hs
@@ -435,6 +435,7 @@
   pattern GL_HINT_BIT,
   pattern GL_INCR,
   pattern GL_INCR_WRAP,
+  pattern GL_INDEX,
   pattern GL_INDEX_ARRAY,
   pattern GL_INDEX_ARRAY_BUFFER_BINDING,
   pattern GL_INDEX_ARRAY_POINTER,
@@ -1071,9 +1072,11 @@
   pattern GL_TEXTURE_GREEN_TYPE,
   pattern GL_TEXTURE_HEIGHT,
   pattern GL_TEXTURE_INTENSITY_SIZE,
+  pattern GL_TEXTURE_INTENSITY_TYPE,
   pattern GL_TEXTURE_INTERNAL_FORMAT,
   pattern GL_TEXTURE_LOD_BIAS,
   pattern GL_TEXTURE_LUMINANCE_SIZE,
+  pattern GL_TEXTURE_LUMINANCE_TYPE,
   pattern GL_TEXTURE_MAG_FILTER,
   pattern GL_TEXTURE_MATRIX,
   pattern GL_TEXTURE_MAX_LEVEL,
diff --git a/src/Graphics/GL/ExtensionPredicates.hs b/src/Graphics/GL/ExtensionPredicates.hs
--- a/src/Graphics/GL/ExtensionPredicates.hs
+++ b/src/Graphics/GL/ExtensionPredicates.hs
@@ -96,6 +96,17 @@
 gl_AMD_draw_buffers_blend = member "GL_AMD_draw_buffers_blend" extensions
 {-# NOINLINE gl_AMD_draw_buffers_blend #-}
 
+-- | Is the <https://www.opengl.org/registry/specs/AMD/framebuffer_multisample_advanced.txt AMD_framebuffer_multisample_advanced> extension supported?
+glGetAMDFramebufferMultisampleAdvanced :: MonadIO m => m Bool
+glGetAMDFramebufferMultisampleAdvanced = getExtensions >>= (return . member "GL_AMD_framebuffer_multisample_advanced")
+
+-- | Is the <https://www.opengl.org/registry/specs/AMD/framebuffer_multisample_advanced.txt AMD_framebuffer_multisample_advanced> extension supported?
+-- Note that in the presence of multiple contexts with different capabilities,
+-- this might be wrong. Use 'glGetAMDFramebufferMultisampleAdvanced' in those cases instead.
+gl_AMD_framebuffer_multisample_advanced :: Bool
+gl_AMD_framebuffer_multisample_advanced = member "GL_AMD_framebuffer_multisample_advanced" extensions
+{-# NOINLINE gl_AMD_framebuffer_multisample_advanced #-}
+
 -- | Is the <https://www.opengl.org/registry/specs/AMD/framebuffer_sample_positions.txt AMD_framebuffer_sample_positions> extension supported?
 glGetAMDFramebufferSamplePositions :: MonadIO m => m Bool
 glGetAMDFramebufferSamplePositions = getExtensions >>= (return . member "GL_AMD_framebuffer_sample_positions")
diff --git a/src/Graphics/GL/Functions/F18.hs b/src/Graphics/GL/Functions/F18.hs
--- a/src/Graphics/GL/Functions/F18.hs
+++ b/src/Graphics/GL/Functions/F18.hs
@@ -110,11 +110,11 @@
   glNamedRenderbufferStorage,
   glNamedRenderbufferStorageEXT,
   glNamedRenderbufferStorageMultisample,
+  glNamedRenderbufferStorageMultisampleAdvancedAMD,
   glNamedRenderbufferStorageMultisampleCoverageEXT,
   glNamedRenderbufferStorageMultisampleEXT,
   glNamedStringARB,
-  glNewList,
-  glNewObjectBufferATI
+  glNewList
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -1641,6 +1641,23 @@
 ptr_glNamedRenderbufferStorageMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
 ptr_glNamedRenderbufferStorageMultisample = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisample"
 
+-- glNamedRenderbufferStorageMultisampleAdvancedAMD ----------------------------
+
+glNamedRenderbufferStorageMultisampleAdvancedAMD
+  :: MonadIO m
+  => GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
+  -> GLsizei -- ^ @samples@.
+  -> GLsizei -- ^ @storageSamples@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glNamedRenderbufferStorageMultisampleAdvancedAMD v1 v2 v3 v4 v5 v6 = liftIO $ dyn618 ptr_glNamedRenderbufferStorageMultisampleAdvancedAMD v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glNamedRenderbufferStorageMultisampleAdvancedAMD #-}
+ptr_glNamedRenderbufferStorageMultisampleAdvancedAMD :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glNamedRenderbufferStorageMultisampleAdvancedAMD = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisampleAdvancedAMD"
+
 -- glNamedRenderbufferStorageMultisampleCoverageEXT ----------------------------
 
 glNamedRenderbufferStorageMultisampleCoverageEXT
@@ -1703,18 +1720,4 @@
 {-# NOINLINE ptr_glNewList #-}
 ptr_glNewList :: FunPtr (GLuint -> GLenum -> IO ())
 ptr_glNewList = unsafePerformIO $ getCommand "glNewList"
-
--- glNewObjectBufferATI --------------------------------------------------------
-
-glNewObjectBufferATI
-  :: MonadIO m
-  => GLsizei -- ^ @size@.
-  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
-  -> GLenum -- ^ @usage@ of type @ArrayObjectUsageATI@.
-  -> m GLuint
-glNewObjectBufferATI v1 v2 v3 = liftIO $ dyn620 ptr_glNewObjectBufferATI v1 v2 v3
-
-{-# NOINLINE ptr_glNewObjectBufferATI #-}
-ptr_glNewObjectBufferATI :: FunPtr (GLsizei -> Ptr a -> GLenum -> IO GLuint)
-ptr_glNewObjectBufferATI = unsafePerformIO $ getCommand "glNewObjectBufferATI"
 
diff --git a/src/Graphics/GL/Functions/F19.hs b/src/Graphics/GL/Functions/F19.hs
--- a/src/Graphics/GL/Functions/F19.hs
+++ b/src/Graphics/GL/Functions/F19.hs
@@ -15,6 +15,7 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F19 (
+  glNewObjectBufferATI,
   glNormal3b,
   glNormal3bv,
   glNormal3d,
@@ -113,8 +114,7 @@
   glPixelTransformParameteriEXT,
   glPixelTransformParameterivEXT,
   glPixelZoom,
-  glPixelZoomxOES,
-  glPointAlongPathNV
+  glPixelZoomxOES
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,20 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glNewObjectBufferATI --------------------------------------------------------
+
+glNewObjectBufferATI
+  :: MonadIO m
+  => GLsizei -- ^ @size@.
+  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
+  -> GLenum -- ^ @usage@ of type @ArrayObjectUsageATI@.
+  -> m GLuint
+glNewObjectBufferATI v1 v2 v3 = liftIO $ dyn620 ptr_glNewObjectBufferATI v1 v2 v3
+
+{-# NOINLINE ptr_glNewObjectBufferATI #-}
+ptr_glNewObjectBufferATI :: FunPtr (GLsizei -> Ptr a -> GLenum -> IO GLuint)
+ptr_glNewObjectBufferATI = unsafePerformIO $ getCommand "glNewObjectBufferATI"
+
 -- glNormal3b ------------------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>. The vector equivalent of this command is 'glNormal3bv'.
@@ -1549,23 +1563,4 @@
 {-# NOINLINE ptr_glPixelZoomxOES #-}
 ptr_glPixelZoomxOES :: FunPtr (GLfixed -> GLfixed -> IO ())
 ptr_glPixelZoomxOES = unsafePerformIO $ getCommand "glPixelZoomxOES"
-
--- glPointAlongPathNV ----------------------------------------------------------
-
-glPointAlongPathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@ of type @Path@.
-  -> GLsizei -- ^ @startSegment@.
-  -> GLsizei -- ^ @numSegments@.
-  -> GLfloat -- ^ @distance@.
-  -> Ptr GLfloat -- ^ @x@ pointing to @1@ element of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @y@ pointing to @1@ element of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @tangentX@ pointing to @1@ element of type @GLfloat@.
-  -> Ptr GLfloat -- ^ @tangentY@ pointing to @1@ element of type @GLfloat@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glPointAlongPathNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn636 ptr_glPointAlongPathNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPointAlongPathNV #-}
-ptr_glPointAlongPathNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
-ptr_glPointAlongPathNV = unsafePerformIO $ getCommand "glPointAlongPathNV"
 
diff --git a/src/Graphics/GL/Functions/F20.hs b/src/Graphics/GL/Functions/F20.hs
--- a/src/Graphics/GL/Functions/F20.hs
+++ b/src/Graphics/GL/Functions/F20.hs
@@ -15,6 +15,7 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F20 (
+  glPointAlongPathNV,
   glPointParameterf,
   glPointParameterfARB,
   glPointParameterfEXT,
@@ -113,8 +114,7 @@
   glProgramUniform1dv,
   glProgramUniform1dvEXT,
   glProgramUniform1f,
-  glProgramUniform1fEXT,
-  glProgramUniform1fv
+  glProgramUniform1fEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,25 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glPointAlongPathNV ----------------------------------------------------------
+
+glPointAlongPathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@ of type @Path@.
+  -> GLsizei -- ^ @startSegment@.
+  -> GLsizei -- ^ @numSegments@.
+  -> GLfloat -- ^ @distance@.
+  -> Ptr GLfloat -- ^ @x@ pointing to @1@ element of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @y@ pointing to @1@ element of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @tangentX@ pointing to @1@ element of type @GLfloat@.
+  -> Ptr GLfloat -- ^ @tangentY@ pointing to @1@ element of type @GLfloat@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glPointAlongPathNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn636 ptr_glPointAlongPathNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPointAlongPathNV #-}
+ptr_glPointAlongPathNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
+ptr_glPointAlongPathNV = unsafePerformIO $ getCommand "glPointAlongPathNV"
+
 -- glPointParameterf -----------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>.
@@ -1594,20 +1613,4 @@
 {-# NOINLINE ptr_glProgramUniform1fEXT #-}
 ptr_glProgramUniform1fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
 ptr_glProgramUniform1fEXT = unsafePerformIO $ getCommand "glProgramUniform1fEXT"
-
--- glProgramUniform1fv ---------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform1fv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
-  -> m ()
-glProgramUniform1fv v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniform1fv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform1fv #-}
-ptr_glProgramUniform1fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramUniform1fv = unsafePerformIO $ getCommand "glProgramUniform1fv"
 
diff --git a/src/Graphics/GL/Functions/F21.hs b/src/Graphics/GL/Functions/F21.hs
--- a/src/Graphics/GL/Functions/F21.hs
+++ b/src/Graphics/GL/Functions/F21.hs
@@ -15,6 +15,7 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F21 (
+  glProgramUniform1fv,
   glProgramUniform1fvEXT,
   glProgramUniform1i,
   glProgramUniform1i64ARB,
@@ -113,8 +114,7 @@
   glProgramUniformMatrix2dv,
   glProgramUniformMatrix2dvEXT,
   glProgramUniformMatrix2fv,
-  glProgramUniformMatrix2fvEXT,
-  glProgramUniformMatrix2x3dv
+  glProgramUniformMatrix2fvEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,22 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glProgramUniform1fv ---------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform1fv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
+  -> m ()
+glProgramUniform1fv v1 v2 v3 v4 = liftIO $ dyn472 ptr_glProgramUniform1fv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform1fv #-}
+ptr_glProgramUniform1fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramUniform1fv = unsafePerformIO $ getCommand "glProgramUniform1fv"
+
 -- glProgramUniform1fvEXT ------------------------------------------------------
 
 -- | This command is an alias for 'glProgramUniform1fv'.
@@ -1685,20 +1701,4 @@
 {-# NOINLINE ptr_glProgramUniformMatrix2fvEXT #-}
 ptr_glProgramUniformMatrix2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
 ptr_glProgramUniformMatrix2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2fvEXT"
-
--- glProgramUniformMatrix2x3dv -------------------------------------------------
-
-glProgramUniformMatrix2x3dv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
-  -> m ()
-glProgramUniformMatrix2x3dv v1 v2 v3 v4 v5 = liftIO $ dyn692 ptr_glProgramUniformMatrix2x3dv v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniformMatrix2x3dv #-}
-ptr_glProgramUniformMatrix2x3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
-ptr_glProgramUniformMatrix2x3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3dv"
 
diff --git a/src/Graphics/GL/Functions/F22.hs b/src/Graphics/GL/Functions/F22.hs
--- a/src/Graphics/GL/Functions/F22.hs
+++ b/src/Graphics/GL/Functions/F22.hs
@@ -15,6 +15,7 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F22 (
+  glProgramUniformMatrix2x3dv,
   glProgramUniformMatrix2x3dvEXT,
   glProgramUniformMatrix2x3fv,
   glProgramUniformMatrix2x3fvEXT,
@@ -113,8 +114,7 @@
   glRectiv,
   glRects,
   glRectsv,
-  glRectxOES,
-  glRectxvOES
+  glRectxOES
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,22 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glProgramUniformMatrix2x3dv -------------------------------------------------
+
+glProgramUniformMatrix2x3dv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> GLboolean -- ^ @transpose@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
+  -> m ()
+glProgramUniformMatrix2x3dv v1 v2 v3 v4 v5 = liftIO $ dyn692 ptr_glProgramUniformMatrix2x3dv v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniformMatrix2x3dv #-}
+ptr_glProgramUniformMatrix2x3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
+ptr_glProgramUniformMatrix2x3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3dv"
+
 -- glProgramUniformMatrix2x3dvEXT ----------------------------------------------
 
 glProgramUniformMatrix2x3dvEXT
@@ -1605,17 +1621,4 @@
 {-# NOINLINE ptr_glRectxOES #-}
 ptr_glRectxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
 ptr_glRectxOES = unsafePerformIO $ getCommand "glRectxOES"
-
--- glRectxvOES -----------------------------------------------------------------
-
-glRectxvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @v1@ pointing to @2@ elements of type @GLfixed@.
-  -> Ptr GLfixed -- ^ @v2@ pointing to @2@ elements of type @GLfixed@.
-  -> m ()
-glRectxvOES v1 v2 = liftIO $ dyn704 ptr_glRectxvOES v1 v2
-
-{-# NOINLINE ptr_glRectxvOES #-}
-ptr_glRectxvOES :: FunPtr (Ptr GLfixed -> Ptr GLfixed -> IO ())
-ptr_glRectxvOES = unsafePerformIO $ getCommand "glRectxvOES"
 
diff --git a/src/Graphics/GL/Functions/F23.hs b/src/Graphics/GL/Functions/F23.hs
--- a/src/Graphics/GL/Functions/F23.hs
+++ b/src/Graphics/GL/Functions/F23.hs
@@ -15,6 +15,7 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F23 (
+  glRectxvOES,
   glReferencePlaneSGIX,
   glReleaseKeyedMutexWin32EXT,
   glReleaseShaderCompiler,
@@ -25,6 +26,7 @@
   glRenderbufferStorageMultisample,
   glRenderbufferStorageMultisampleANGLE,
   glRenderbufferStorageMultisampleAPPLE,
+  glRenderbufferStorageMultisampleAdvancedAMD,
   glRenderbufferStorageMultisampleCoverageNV,
   glRenderbufferStorageMultisampleEXT,
   glRenderbufferStorageMultisampleIMG,
@@ -112,9 +114,7 @@
   glSecondaryColor3dvEXT,
   glSecondaryColor3f,
   glSecondaryColor3fEXT,
-  glSecondaryColor3fv,
-  glSecondaryColor3fvEXT,
-  glSecondaryColor3hNV
+  glSecondaryColor3fv
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,19 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glRectxvOES -----------------------------------------------------------------
+
+glRectxvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @v1@ pointing to @2@ elements of type @GLfixed@.
+  -> Ptr GLfixed -- ^ @v2@ pointing to @2@ elements of type @GLfixed@.
+  -> m ()
+glRectxvOES v1 v2 = liftIO $ dyn704 ptr_glRectxvOES v1 v2
+
+{-# NOINLINE ptr_glRectxvOES #-}
+ptr_glRectxvOES :: FunPtr (Ptr GLfixed -> Ptr GLfixed -> IO ())
+ptr_glRectxvOES = unsafePerformIO $ getCommand "glRectxvOES"
+
 -- glReferencePlaneSGIX --------------------------------------------------------
 
 glReferencePlaneSGIX
@@ -266,6 +279,23 @@
 ptr_glRenderbufferStorageMultisampleAPPLE :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
 ptr_glRenderbufferStorageMultisampleAPPLE = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleAPPLE"
 
+-- glRenderbufferStorageMultisampleAdvancedAMD ---------------------------------
+
+glRenderbufferStorageMultisampleAdvancedAMD
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [RenderbufferTarget](Graphics-GL-Groups.html#RenderbufferTarget).
+  -> GLsizei -- ^ @samples@.
+  -> GLsizei -- ^ @storageSamples@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glRenderbufferStorageMultisampleAdvancedAMD v1 v2 v3 v4 v5 v6 = liftIO $ dyn709 ptr_glRenderbufferStorageMultisampleAdvancedAMD v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glRenderbufferStorageMultisampleAdvancedAMD #-}
+ptr_glRenderbufferStorageMultisampleAdvancedAMD :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glRenderbufferStorageMultisampleAdvancedAMD = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleAdvancedAMD"
+
 -- glRenderbufferStorageMultisampleCoverageNV ----------------------------------
 
 glRenderbufferStorageMultisampleCoverageNV
@@ -1549,32 +1579,4 @@
 {-# NOINLINE ptr_glSecondaryColor3fv #-}
 ptr_glSecondaryColor3fv :: FunPtr (Ptr GLfloat -> IO ())
 ptr_glSecondaryColor3fv = unsafePerformIO $ getCommand "glSecondaryColor3fv"
-
--- glSecondaryColor3fvEXT ------------------------------------------------------
-
--- | This command is an alias for 'glSecondaryColor3fv'.
-glSecondaryColor3fvEXT
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
-  -> m ()
-glSecondaryColor3fvEXT v1 = liftIO $ dyn42 ptr_glSecondaryColor3fvEXT v1
-
-{-# NOINLINE ptr_glSecondaryColor3fvEXT #-}
-ptr_glSecondaryColor3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glSecondaryColor3fvEXT = unsafePerformIO $ getCommand "glSecondaryColor3fvEXT"
-
--- glSecondaryColor3hNV --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glSecondaryColor3hvNV'.
-glSecondaryColor3hNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @red@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @green@ of type @Half16NV@.
-  -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
-  -> m ()
-glSecondaryColor3hNV v1 v2 v3 = liftIO $ dyn101 ptr_glSecondaryColor3hNV v1 v2 v3
-
-{-# NOINLINE ptr_glSecondaryColor3hNV #-}
-ptr_glSecondaryColor3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
-ptr_glSecondaryColor3hNV = unsafePerformIO $ getCommand "glSecondaryColor3hNV"
 
diff --git a/src/Graphics/GL/Functions/F24.hs b/src/Graphics/GL/Functions/F24.hs
--- a/src/Graphics/GL/Functions/F24.hs
+++ b/src/Graphics/GL/Functions/F24.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F24 (
+  glSecondaryColor3fvEXT,
+  glSecondaryColor3hNV,
   glSecondaryColor3hvNV,
   glSecondaryColor3i,
   glSecondaryColor3iEXT,
@@ -112,9 +114,7 @@
   glTbufferMask3DFX,
   glTessellationFactorAMD,
   glTessellationModeAMD,
-  glTestFenceAPPLE,
-  glTestFenceNV,
-  glTestObjectAPPLE
+  glTestFenceAPPLE
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,34 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glSecondaryColor3fvEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glSecondaryColor3fv'.
+glSecondaryColor3fvEXT
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
+  -> m ()
+glSecondaryColor3fvEXT v1 = liftIO $ dyn42 ptr_glSecondaryColor3fvEXT v1
+
+{-# NOINLINE ptr_glSecondaryColor3fvEXT #-}
+ptr_glSecondaryColor3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glSecondaryColor3fvEXT = unsafePerformIO $ getCommand "glSecondaryColor3fvEXT"
+
+-- glSecondaryColor3hNV --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glSecondaryColor3hvNV'.
+glSecondaryColor3hNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @red@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @green@ of type @Half16NV@.
+  -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
+  -> m ()
+glSecondaryColor3hNV v1 v2 v3 = liftIO $ dyn101 ptr_glSecondaryColor3hNV v1 v2 v3
+
+{-# NOINLINE ptr_glSecondaryColor3hNV #-}
+ptr_glSecondaryColor3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
+ptr_glSecondaryColor3hNV = unsafePerformIO $ getCommand "glSecondaryColor3hNV"
+
 -- glSecondaryColor3hvNV -------------------------------------------------------
 
 glSecondaryColor3hvNV
@@ -1525,29 +1553,4 @@
 {-# NOINLINE ptr_glTestFenceAPPLE #-}
 ptr_glTestFenceAPPLE :: FunPtr (GLuint -> IO GLboolean)
 ptr_glTestFenceAPPLE = unsafePerformIO $ getCommand "glTestFenceAPPLE"
-
--- glTestFenceNV ---------------------------------------------------------------
-
-glTestFenceNV
-  :: MonadIO m
-  => GLuint -- ^ @fence@ of type @FenceNV@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glTestFenceNV v1 = liftIO $ dyn280 ptr_glTestFenceNV v1
-
-{-# NOINLINE ptr_glTestFenceNV #-}
-ptr_glTestFenceNV :: FunPtr (GLuint -> IO GLboolean)
-ptr_glTestFenceNV = unsafePerformIO $ getCommand "glTestFenceNV"
-
--- glTestObjectAPPLE -----------------------------------------------------------
-
-glTestObjectAPPLE
-  :: MonadIO m
-  => GLenum -- ^ @object@ of type @ObjectTypeAPPLE@.
-  -> GLuint -- ^ @name@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glTestObjectAPPLE v1 v2 = liftIO $ dyn495 ptr_glTestObjectAPPLE v1 v2
-
-{-# NOINLINE ptr_glTestObjectAPPLE #-}
-ptr_glTestObjectAPPLE :: FunPtr (GLenum -> GLuint -> IO GLboolean)
-ptr_glTestObjectAPPLE = unsafePerformIO $ getCommand "glTestObjectAPPLE"
 
diff --git a/src/Graphics/GL/Functions/F25.hs b/src/Graphics/GL/Functions/F25.hs
--- a/src/Graphics/GL/Functions/F25.hs
+++ b/src/Graphics/GL/Functions/F25.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F25 (
+  glTestFenceNV,
+  glTestObjectAPPLE,
   glTexBuffer,
   glTexBufferARB,
   glTexBufferEXT,
@@ -112,9 +114,7 @@
   glTexEnvi,
   glTexEnviv,
   glTexEnvx,
-  glTexEnvxOES,
-  glTexEnvxv,
-  glTexEnvxvOES
+  glTexEnvxOES
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,31 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glTestFenceNV ---------------------------------------------------------------
+
+glTestFenceNV
+  :: MonadIO m
+  => GLuint -- ^ @fence@ of type @FenceNV@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glTestFenceNV v1 = liftIO $ dyn280 ptr_glTestFenceNV v1
+
+{-# NOINLINE ptr_glTestFenceNV #-}
+ptr_glTestFenceNV :: FunPtr (GLuint -> IO GLboolean)
+ptr_glTestFenceNV = unsafePerformIO $ getCommand "glTestFenceNV"
+
+-- glTestObjectAPPLE -----------------------------------------------------------
+
+glTestObjectAPPLE
+  :: MonadIO m
+  => GLenum -- ^ @object@ of type @ObjectTypeAPPLE@.
+  -> GLuint -- ^ @name@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glTestObjectAPPLE v1 v2 = liftIO $ dyn495 ptr_glTestObjectAPPLE v1 v2
+
+{-# NOINLINE ptr_glTestObjectAPPLE #-}
+ptr_glTestObjectAPPLE :: FunPtr (GLenum -> GLuint -> IO GLboolean)
+ptr_glTestObjectAPPLE = unsafePerformIO $ getCommand "glTestObjectAPPLE"
+
 -- glTexBuffer -----------------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexBuffer.xhtml OpenGL 4.x>.
@@ -1517,32 +1542,4 @@
 {-# NOINLINE ptr_glTexEnvxOES #-}
 ptr_glTexEnvxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
 ptr_glTexEnvxOES = unsafePerformIO $ getCommand "glTexEnvxOES"
-
--- glTexEnvxv ------------------------------------------------------------------
-
-glTexEnvxv
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glTexEnvxv v1 v2 v3 = liftIO $ dyn166 ptr_glTexEnvxv v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvxv #-}
-ptr_glTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glTexEnvxv = unsafePerformIO $ getCommand "glTexEnvxv"
-
--- glTexEnvxvOES ---------------------------------------------------------------
-
-glTexEnvxvOES
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
-  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
-  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
-  -> m ()
-glTexEnvxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glTexEnvxvOES v1 v2 v3
-
-{-# NOINLINE ptr_glTexEnvxvOES #-}
-ptr_glTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
-ptr_glTexEnvxvOES = unsafePerformIO $ getCommand "glTexEnvxvOES"
 
diff --git a/src/Graphics/GL/Functions/F26.hs b/src/Graphics/GL/Functions/F26.hs
--- a/src/Graphics/GL/Functions/F26.hs
+++ b/src/Graphics/GL/Functions/F26.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F26 (
+  glTexEnvxv,
+  glTexEnvxvOES,
   glTexFilterFuncSGIS,
   glTexGend,
   glTexGendv,
@@ -112,9 +114,7 @@
   glTextureRangeAPPLE,
   glTextureRenderbufferEXT,
   glTextureStorage1D,
-  glTextureStorage1DEXT,
-  glTextureStorage2D,
-  glTextureStorage2DEXT
+  glTextureStorage1DEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,34 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glTexEnvxv ------------------------------------------------------------------
+
+glTexEnvxv
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glTexEnvxv v1 v2 v3 = liftIO $ dyn166 ptr_glTexEnvxv v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvxv #-}
+ptr_glTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glTexEnvxv = unsafePerformIO $ getCommand "glTexEnvxv"
+
+-- glTexEnvxvOES ---------------------------------------------------------------
+
+glTexEnvxvOES
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
+  -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
+  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
+  -> m ()
+glTexEnvxvOES v1 v2 v3 = liftIO $ dyn166 ptr_glTexEnvxvOES v1 v2 v3
+
+{-# NOINLINE ptr_glTexEnvxvOES #-}
+ptr_glTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
+ptr_glTexEnvxvOES = unsafePerformIO $ getCommand "glTexEnvxvOES"
+
 -- glTexFilterFuncSGIS ---------------------------------------------------------
 
 glTexFilterFuncSGIS
@@ -1773,38 +1801,4 @@
 {-# NOINLINE ptr_glTextureStorage1DEXT #-}
 ptr_glTextureStorage1DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
 ptr_glTextureStorage1DEXT = unsafePerformIO $ getCommand "glTextureStorage1DEXT"
-
--- glTextureStorage2D ----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>.
-glTextureStorage2D
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glTextureStorage2D v1 v2 v3 v4 v5 = liftIO $ dyn617 ptr_glTextureStorage2D v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glTextureStorage2D #-}
-ptr_glTextureStorage2D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glTextureStorage2D = unsafePerformIO $ getCommand "glTextureStorage2D"
-
--- glTextureStorage2DEXT -------------------------------------------------------
-
-glTextureStorage2DEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @target@.
-  -> GLsizei -- ^ @levels@.
-  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> m ()
-glTextureStorage2DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn794 ptr_glTextureStorage2DEXT v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glTextureStorage2DEXT #-}
-ptr_glTextureStorage2DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
-ptr_glTextureStorage2DEXT = unsafePerformIO $ getCommand "glTextureStorage2DEXT"
 
diff --git a/src/Graphics/GL/Functions/F27.hs b/src/Graphics/GL/Functions/F27.hs
--- a/src/Graphics/GL/Functions/F27.hs
+++ b/src/Graphics/GL/Functions/F27.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F27 (
+  glTextureStorage2D,
+  glTextureStorage2DEXT,
   glTextureStorage2DMultisample,
   glTextureStorage2DMultisampleEXT,
   glTextureStorage3D,
@@ -112,9 +114,7 @@
   glUniform3ui64NV,
   glUniform3ui64vARB,
   glUniform3ui64vNV,
-  glUniform3uiEXT,
-  glUniform3uiv,
-  glUniform3uivEXT
+  glUniform3uiEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,40 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glTextureStorage2D ----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>.
+glTextureStorage2D
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glTextureStorage2D v1 v2 v3 v4 v5 = liftIO $ dyn617 ptr_glTextureStorage2D v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glTextureStorage2D #-}
+ptr_glTextureStorage2D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glTextureStorage2D = unsafePerformIO $ getCommand "glTextureStorage2D"
+
+-- glTextureStorage2DEXT -------------------------------------------------------
+
+glTextureStorage2DEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @target@.
+  -> GLsizei -- ^ @levels@.
+  -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glTextureStorage2DEXT v1 v2 v3 v4 v5 v6 = liftIO $ dyn794 ptr_glTextureStorage2DEXT v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glTextureStorage2DEXT #-}
+ptr_glTextureStorage2DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
+ptr_glTextureStorage2DEXT = unsafePerformIO $ getCommand "glTextureStorage2DEXT"
+
 -- glTextureStorage2DMultisample -----------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2DMultisample.xhtml OpenGL 4.x>.
@@ -1657,34 +1691,4 @@
 {-# NOINLINE ptr_glUniform3uiEXT #-}
 ptr_glUniform3uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
 ptr_glUniform3uiEXT = unsafePerformIO $ getCommand "glUniform3uiEXT"
-
--- glUniform3uiv ---------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
-glUniform3uiv
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
-  -> m ()
-glUniform3uiv v1 v2 v3 = liftIO $ dyn833 ptr_glUniform3uiv v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3uiv #-}
-ptr_glUniform3uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform3uiv = unsafePerformIO $ getCommand "glUniform3uiv"
-
--- glUniform3uivEXT ------------------------------------------------------------
-
--- | This command is an alias for 'glUniform3uiv'.
-glUniform3uivEXT
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
-  -> m ()
-glUniform3uivEXT v1 v2 v3 = liftIO $ dyn833 ptr_glUniform3uivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3uivEXT #-}
-ptr_glUniform3uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glUniform3uivEXT = unsafePerformIO $ getCommand "glUniform3uivEXT"
 
diff --git a/src/Graphics/GL/Functions/F28.hs b/src/Graphics/GL/Functions/F28.hs
--- a/src/Graphics/GL/Functions/F28.hs
+++ b/src/Graphics/GL/Functions/F28.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F28 (
+  glUniform3uiv,
+  glUniform3uivEXT,
   glUniform4d,
   glUniform4dv,
   glUniform4f,
@@ -112,9 +114,7 @@
   glVariantsvEXT,
   glVariantubvEXT,
   glVariantuivEXT,
-  glVariantusvEXT,
-  glVertex2bOES,
-  glVertex2bvOES
+  glVariantusvEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,36 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glUniform3uiv ---------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>.
+glUniform3uiv
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
+  -> m ()
+glUniform3uiv v1 v2 v3 = liftIO $ dyn833 ptr_glUniform3uiv v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3uiv #-}
+ptr_glUniform3uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform3uiv = unsafePerformIO $ getCommand "glUniform3uiv"
+
+-- glUniform3uivEXT ------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform3uiv'.
+glUniform3uivEXT
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
+  -> m ()
+glUniform3uivEXT v1 v2 v3 = liftIO $ dyn833 ptr_glUniform3uivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3uivEXT #-}
+ptr_glUniform3uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glUniform3uivEXT = unsafePerformIO $ getCommand "glUniform3uivEXT"
+
 -- glUniform4d -----------------------------------------------------------------
 
 glUniform4d
@@ -1544,29 +1574,4 @@
 {-# NOINLINE ptr_glVariantusvEXT #-}
 ptr_glVariantusvEXT :: FunPtr (GLuint -> Ptr GLushort -> IO ())
 ptr_glVariantusvEXT = unsafePerformIO $ getCommand "glVariantusvEXT"
-
--- glVertex2bOES ---------------------------------------------------------------
-
-glVertex2bOES
-  :: MonadIO m
-  => GLbyte -- ^ @x@.
-  -> GLbyte -- ^ @y@.
-  -> m ()
-glVertex2bOES v1 v2 = liftIO $ dyn751 ptr_glVertex2bOES v1 v2
-
-{-# NOINLINE ptr_glVertex2bOES #-}
-ptr_glVertex2bOES :: FunPtr (GLbyte -> GLbyte -> IO ())
-ptr_glVertex2bOES = unsafePerformIO $ getCommand "glVertex2bOES"
-
--- glVertex2bvOES --------------------------------------------------------------
-
-glVertex2bvOES
-  :: MonadIO m
-  => Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
-  -> m ()
-glVertex2bvOES v1 = liftIO $ dyn38 ptr_glVertex2bvOES v1
-
-{-# NOINLINE ptr_glVertex2bvOES #-}
-ptr_glVertex2bvOES :: FunPtr (Ptr GLbyte -> IO ())
-ptr_glVertex2bvOES = unsafePerformIO $ getCommand "glVertex2bvOES"
 
diff --git a/src/Graphics/GL/Functions/F29.hs b/src/Graphics/GL/Functions/F29.hs
--- a/src/Graphics/GL/Functions/F29.hs
+++ b/src/Graphics/GL/Functions/F29.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F29 (
+  glVertex2bOES,
+  glVertex2bvOES,
   glVertex2d,
   glVertex2dv,
   glVertex2f,
@@ -112,9 +114,7 @@
   glVertexAttrib2dvARB,
   glVertexAttrib2dvNV,
   glVertexAttrib2f,
-  glVertexAttrib2fARB,
-  glVertexAttrib2fNV,
-  glVertexAttrib2fv
+  glVertexAttrib2fARB
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,31 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glVertex2bOES ---------------------------------------------------------------
+
+glVertex2bOES
+  :: MonadIO m
+  => GLbyte -- ^ @x@.
+  -> GLbyte -- ^ @y@.
+  -> m ()
+glVertex2bOES v1 v2 = liftIO $ dyn751 ptr_glVertex2bOES v1 v2
+
+{-# NOINLINE ptr_glVertex2bOES #-}
+ptr_glVertex2bOES :: FunPtr (GLbyte -> GLbyte -> IO ())
+ptr_glVertex2bOES = unsafePerformIO $ getCommand "glVertex2bOES"
+
+-- glVertex2bvOES --------------------------------------------------------------
+
+glVertex2bvOES
+  :: MonadIO m
+  => Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
+  -> m ()
+glVertex2bvOES v1 = liftIO $ dyn38 ptr_glVertex2bvOES v1
+
+{-# NOINLINE ptr_glVertex2bvOES #-}
+ptr_glVertex2bvOES :: FunPtr (Ptr GLbyte -> IO ())
+ptr_glVertex2bvOES = unsafePerformIO $ getCommand "glVertex2bvOES"
+
 -- glVertex2d ------------------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>. The vector equivalent of this command is 'glVertex2dv'.
@@ -1544,33 +1569,4 @@
 {-# NOINLINE ptr_glVertexAttrib2fARB #-}
 ptr_glVertexAttrib2fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
 ptr_glVertexAttrib2fARB = unsafePerformIO $ getCommand "glVertexAttrib2fARB"
-
--- glVertexAttrib2fNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2fvNV'. This command is an alias for 'glVertexAttrib2f'.
-glVertexAttrib2fNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLfloat -- ^ @x@.
-  -> GLfloat -- ^ @y@.
-  -> m ()
-glVertexAttrib2fNV v1 v2 v3 = liftIO $ dyn225 ptr_glVertexAttrib2fNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2fNV #-}
-ptr_glVertexAttrib2fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
-ptr_glVertexAttrib2fNV = unsafePerformIO $ getCommand "glVertexAttrib2fNV"
-
--- glVertexAttrib2fv -----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttrib2fv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttrib2fv v1 v2 = liftIO $ dyn389 ptr_glVertexAttrib2fv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib2fv #-}
-ptr_glVertexAttrib2fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
-ptr_glVertexAttrib2fv = unsafePerformIO $ getCommand "glVertexAttrib2fv"
 
diff --git a/src/Graphics/GL/Functions/F30.hs b/src/Graphics/GL/Functions/F30.hs
--- a/src/Graphics/GL/Functions/F30.hs
+++ b/src/Graphics/GL/Functions/F30.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F30 (
+  glVertexAttrib2fNV,
+  glVertexAttrib2fv,
   glVertexAttrib2fvARB,
   glVertexAttrib2fvNV,
   glVertexAttrib2hNV,
@@ -112,9 +114,7 @@
   glVertexAttribI2iEXT,
   glVertexAttribI2iv,
   glVertexAttribI2ivEXT,
-  glVertexAttribI2ui,
-  glVertexAttribI2uiEXT,
-  glVertexAttribI2uiv
+  glVertexAttribI2ui
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,35 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glVertexAttrib2fNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2fvNV'. This command is an alias for 'glVertexAttrib2f'.
+glVertexAttrib2fNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> m ()
+glVertexAttrib2fNV v1 v2 v3 = liftIO $ dyn225 ptr_glVertexAttrib2fNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2fNV #-}
+ptr_glVertexAttrib2fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+ptr_glVertexAttrib2fNV = unsafePerformIO $ getCommand "glVertexAttrib2fNV"
+
+-- glVertexAttrib2fv -----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttrib2fv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttrib2fv v1 v2 = liftIO $ dyn389 ptr_glVertexAttrib2fv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib2fv #-}
+ptr_glVertexAttrib2fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glVertexAttrib2fv = unsafePerformIO $ getCommand "glVertexAttrib2fv"
+
 -- glVertexAttrib2fvARB --------------------------------------------------------
 
 -- | This command is an alias for 'glVertexAttrib2fv'.
@@ -1566,33 +1595,4 @@
 {-# NOINLINE ptr_glVertexAttribI2ui #-}
 ptr_glVertexAttribI2ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
 ptr_glVertexAttribI2ui = unsafePerformIO $ getCommand "glVertexAttribI2ui"
-
--- glVertexAttribI2uiEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI2uivEXT'. This command is an alias for 'glVertexAttribI2ui'.
-glVertexAttribI2uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> m ()
-glVertexAttribI2uiEXT v1 v2 v3 = liftIO $ dyn105 ptr_glVertexAttribI2uiEXT v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribI2uiEXT #-}
-ptr_glVertexAttribI2uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI2uiEXT = unsafePerformIO $ getCommand "glVertexAttribI2uiEXT"
-
--- glVertexAttribI2uiv ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
-glVertexAttribI2uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @2@ elements of type @GLuint@.
-  -> m ()
-glVertexAttribI2uiv v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI2uiv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI2uiv #-}
-ptr_glVertexAttribI2uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI2uiv = unsafePerformIO $ getCommand "glVertexAttribI2uiv"
 
diff --git a/src/Graphics/GL/Functions/F31.hs b/src/Graphics/GL/Functions/F31.hs
--- a/src/Graphics/GL/Functions/F31.hs
+++ b/src/Graphics/GL/Functions/F31.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F31 (
+  glVertexAttribI2uiEXT,
+  glVertexAttribI2uiv,
   glVertexAttribI2uivEXT,
   glVertexAttribI3i,
   glVertexAttribI3iEXT,
@@ -112,9 +114,7 @@
   glVertexAttribs4svNV,
   glVertexAttribs4ubvNV,
   glVertexBindingDivisor,
-  glVertexBlendARB,
-  glVertexBlendEnvfATI,
-  glVertexBlendEnviATI
+  glVertexBlendARB
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,35 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glVertexAttribI2uiEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI2uivEXT'. This command is an alias for 'glVertexAttribI2ui'.
+glVertexAttribI2uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> m ()
+glVertexAttribI2uiEXT v1 v2 v3 = liftIO $ dyn105 ptr_glVertexAttribI2uiEXT v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribI2uiEXT #-}
+ptr_glVertexAttribI2uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI2uiEXT = unsafePerformIO $ getCommand "glVertexAttribI2uiEXT"
+
+-- glVertexAttribI2uiv ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>.
+glVertexAttribI2uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @2@ elements of type @GLuint@.
+  -> m ()
+glVertexAttribI2uiv v1 v2 = liftIO $ dyn197 ptr_glVertexAttribI2uiv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI2uiv #-}
+ptr_glVertexAttribI2uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI2uiv = unsafePerformIO $ getCommand "glVertexAttribI2uiv"
+
 -- glVertexAttribI2uivEXT ------------------------------------------------------
 
 -- | This command is an alias for 'glVertexAttribI2uiv'.
@@ -1558,30 +1587,4 @@
 {-# NOINLINE ptr_glVertexBlendARB #-}
 ptr_glVertexBlendARB :: FunPtr (GLint -> IO ())
 ptr_glVertexBlendARB = unsafePerformIO $ getCommand "glVertexBlendARB"
-
--- glVertexBlendEnvfATI --------------------------------------------------------
-
-glVertexBlendEnvfATI
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @VertexStreamATI@.
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glVertexBlendEnvfATI v1 v2 = liftIO $ dyn0 ptr_glVertexBlendEnvfATI v1 v2
-
-{-# NOINLINE ptr_glVertexBlendEnvfATI #-}
-ptr_glVertexBlendEnvfATI :: FunPtr (GLenum -> GLfloat -> IO ())
-ptr_glVertexBlendEnvfATI = unsafePerformIO $ getCommand "glVertexBlendEnvfATI"
-
--- glVertexBlendEnviATI --------------------------------------------------------
-
-glVertexBlendEnviATI
-  :: MonadIO m
-  => GLenum -- ^ @pname@ of type @VertexStreamATI@.
-  -> GLint -- ^ @param@.
-  -> m ()
-glVertexBlendEnviATI v1 v2 = liftIO $ dyn56 ptr_glVertexBlendEnviATI v1 v2
-
-{-# NOINLINE ptr_glVertexBlendEnviATI #-}
-ptr_glVertexBlendEnviATI :: FunPtr (GLenum -> GLint -> IO ())
-ptr_glVertexBlendEnviATI = unsafePerformIO $ getCommand "glVertexBlendEnviATI"
 
diff --git a/src/Graphics/GL/Functions/F32.hs b/src/Graphics/GL/Functions/F32.hs
--- a/src/Graphics/GL/Functions/F32.hs
+++ b/src/Graphics/GL/Functions/F32.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F32 (
+  glVertexBlendEnvfATI,
+  glVertexBlendEnviATI,
   glVertexFormatNV,
   glVertexP2ui,
   glVertexP2uiv,
@@ -112,9 +114,7 @@
   glWindowPos2iv,
   glWindowPos2ivARB,
   glWindowPos2ivMESA,
-  glWindowPos2s,
-  glWindowPos2sARB,
-  glWindowPos2sMESA
+  glWindowPos2s
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,32 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glVertexBlendEnvfATI --------------------------------------------------------
+
+glVertexBlendEnvfATI
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @VertexStreamATI@.
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glVertexBlendEnvfATI v1 v2 = liftIO $ dyn0 ptr_glVertexBlendEnvfATI v1 v2
+
+{-# NOINLINE ptr_glVertexBlendEnvfATI #-}
+ptr_glVertexBlendEnvfATI :: FunPtr (GLenum -> GLfloat -> IO ())
+ptr_glVertexBlendEnvfATI = unsafePerformIO $ getCommand "glVertexBlendEnvfATI"
+
+-- glVertexBlendEnviATI --------------------------------------------------------
+
+glVertexBlendEnviATI
+  :: MonadIO m
+  => GLenum -- ^ @pname@ of type @VertexStreamATI@.
+  -> GLint -- ^ @param@.
+  -> m ()
+glVertexBlendEnviATI v1 v2 = liftIO $ dyn56 ptr_glVertexBlendEnviATI v1 v2
+
+{-# NOINLINE ptr_glVertexBlendEnviATI #-}
+ptr_glVertexBlendEnviATI :: FunPtr (GLenum -> GLint -> IO ())
+ptr_glVertexBlendEnviATI = unsafePerformIO $ getCommand "glVertexBlendEnviATI"
+
 -- glVertexFormatNV ------------------------------------------------------------
 
 glVertexFormatNV
@@ -1489,32 +1515,4 @@
 {-# NOINLINE ptr_glWindowPos2s #-}
 ptr_glWindowPos2s :: FunPtr (GLshort -> GLshort -> IO ())
 ptr_glWindowPos2s = unsafePerformIO $ getCommand "glWindowPos2s"
-
--- glWindowPos2sARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2svARB'. This command is an alias for 'glWindowPos2s'.
-glWindowPos2sARB
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> m ()
-glWindowPos2sARB v1 v2 = liftIO $ dyn697 ptr_glWindowPos2sARB v1 v2
-
-{-# NOINLINE ptr_glWindowPos2sARB #-}
-ptr_glWindowPos2sARB :: FunPtr (GLshort -> GLshort -> IO ())
-ptr_glWindowPos2sARB = unsafePerformIO $ getCommand "glWindowPos2sARB"
-
--- glWindowPos2sMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2svMESA'. This command is an alias for 'glWindowPos2s'.
-glWindowPos2sMESA
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> m ()
-glWindowPos2sMESA v1 v2 = liftIO $ dyn697 ptr_glWindowPos2sMESA v1 v2
-
-{-# NOINLINE ptr_glWindowPos2sMESA #-}
-ptr_glWindowPos2sMESA :: FunPtr (GLshort -> GLshort -> IO ())
-ptr_glWindowPos2sMESA = unsafePerformIO $ getCommand "glWindowPos2sMESA"
 
diff --git a/src/Graphics/GL/Functions/F33.hs b/src/Graphics/GL/Functions/F33.hs
--- a/src/Graphics/GL/Functions/F33.hs
+++ b/src/Graphics/GL/Functions/F33.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F33 (
+  glWindowPos2sARB,
+  glWindowPos2sMESA,
   glWindowPos2sv,
   glWindowPos2svARB,
   glWindowPos2svMESA,
@@ -59,6 +61,34 @@
 import Graphics.GL.Foreign
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
+
+-- glWindowPos2sARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2svARB'. This command is an alias for 'glWindowPos2s'.
+glWindowPos2sARB
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> m ()
+glWindowPos2sARB v1 v2 = liftIO $ dyn697 ptr_glWindowPos2sARB v1 v2
+
+{-# NOINLINE ptr_glWindowPos2sARB #-}
+ptr_glWindowPos2sARB :: FunPtr (GLshort -> GLshort -> IO ())
+ptr_glWindowPos2sARB = unsafePerformIO $ getCommand "glWindowPos2sARB"
+
+-- glWindowPos2sMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2svMESA'. This command is an alias for 'glWindowPos2s'.
+glWindowPos2sMESA
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> m ()
+glWindowPos2sMESA v1 v2 = liftIO $ dyn697 ptr_glWindowPos2sMESA v1 v2
+
+{-# NOINLINE ptr_glWindowPos2sMESA #-}
+ptr_glWindowPos2sMESA :: FunPtr (GLshort -> GLshort -> IO ())
+ptr_glWindowPos2sMESA = unsafePerformIO $ getCommand "glWindowPos2sMESA"
 
 -- glWindowPos2sv --------------------------------------------------------------
 
diff --git a/src/Graphics/GL/Tokens.hs b/src/Graphics/GL/Tokens.hs
--- a/src/Graphics/GL/Tokens.hs
+++ b/src/Graphics/GL/Tokens.hs
@@ -3483,6 +3483,8 @@
 
 pattern GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM = 0x96A2 :: GLenum
 
+pattern GL_FRAMEBUFFER_FLIP_Y_MESA = 0x8BBB :: GLenum
+
 pattern GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6 :: GLenum
 
 pattern GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6 :: GLenum
@@ -5145,6 +5147,10 @@
 
 pattern GL_MAX_COLOR_ATTACHMENTS_NV = 0x8CDF :: GLenum
 
+pattern GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD = 0x91B3 :: GLenum
+
+pattern GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD = 0x91B4 :: GLenum
+
 pattern GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3 :: GLenum
 
 pattern GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B3 :: GLenum
@@ -5279,6 +5285,8 @@
 
 pattern GL_MAX_DEPTH = 0x8280 :: GLenum
 
+pattern GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD = 0x91B5 :: GLenum
+
 pattern GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F :: GLenum
 
 pattern GL_MAX_DRAW_BUFFERS = 0x8824 :: GLenum
@@ -6387,6 +6395,8 @@
 
 pattern GL_NUM_SPIR_V_EXTENSIONS = 0x9554 :: GLenum
 
+pattern GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B6 :: GLenum
+
 pattern GL_NUM_TILING_TYPES_EXT = 0x9582 :: GLenum
 
 pattern GL_NUM_VIDEO_CAPTURE_STREAMS_NV = 0x9024 :: GLenum
@@ -8105,6 +8115,8 @@
 
 pattern GL_RENDERBUFFER_STENCIL_SIZE_OES = 0x8D55 :: GLenum
 
+pattern GL_RENDERBUFFER_STORAGE_SAMPLES_AMD = 0x91B2 :: GLenum
+
 pattern GL_RENDERBUFFER_WIDTH = 0x8D42 :: GLenum
 
 pattern GL_RENDERBUFFER_WIDTH_EXT = 0x8D42 :: GLenum
@@ -9316,6 +9328,8 @@
 pattern GL_SUPERSAMPLE_SCALE_X_NV = 0x9372 :: GLenum
 
 pattern GL_SUPERSAMPLE_SCALE_Y_NV = 0x9373 :: GLenum
+
+pattern GL_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B7 :: GLenum
 
 pattern GL_SURFACE_MAPPED_NV = 0x8700 :: GLenum
 
