diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+3.2.2.0
+-------
+* Updated OpenGL registry to r33080.
+
 3.2.1.0
 -------
 * Updated OpenGL registry to r33061.
diff --git a/OpenGLRaw.cabal b/OpenGLRaw.cabal
--- a/OpenGLRaw.cabal
+++ b/OpenGLRaw.cabal
@@ -1,5 +1,5 @@
 name: OpenGLRaw
-version: 3.2.1.0
+version: 3.2.2.0
 synopsis: A raw binding for the OpenGL graphics system
 description:
   OpenGLRaw is a raw Haskell binding for the OpenGL 4.5 graphics system and
diff --git a/RegistryProcessor/OpenGL-Registry/gl.xml b/RegistryProcessor/OpenGL-Registry/gl.xml
# file too large to diff: RegistryProcessor/OpenGL-Registry/gl.xml
diff --git a/src/Graphics/GL/Functions/F05.hs b/src/Graphics/GL/Functions/F05.hs
--- a/src/Graphics/GL/Functions/F05.hs
+++ b/src/Graphics/GL/Functions/F05.hs
@@ -106,15 +106,15 @@
   glDepthMask,
   glDepthRange,
   glDepthRangeArrayfvNV,
+  glDepthRangeArrayfvOES,
   glDepthRangeArrayv,
   glDepthRangeIndexed,
   glDepthRangeIndexedfNV,
+  glDepthRangeIndexedfOES,
   glDepthRangedNV,
   glDepthRangef,
   glDepthRangefOES,
-  glDepthRangex,
-  glDepthRangexOES,
-  glDetachObjectARB
+  glDepthRangex
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -1394,6 +1394,20 @@
 ptr_glDepthRangeArrayfvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
 ptr_glDepthRangeArrayfvNV = unsafePerformIO $ getCommand "glDepthRangeArrayfvNV"
 
+-- glDepthRangeArrayfvOES ------------------------------------------------------
+
+glDepthRangeArrayfvOES
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@.
+  -> m ()
+glDepthRangeArrayfvOES v1 v2 v3 = liftIO $ dyn218 ptr_glDepthRangeArrayfvOES v1 v2 v3
+
+{-# NOINLINE ptr_glDepthRangeArrayfvOES #-}
+ptr_glDepthRangeArrayfvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glDepthRangeArrayfvOES = unsafePerformIO $ getCommand "glDepthRangeArrayfvOES"
+
 -- glDepthRangeArrayv ----------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRangeArray.xhtml OpenGL 4.x>.
@@ -1438,6 +1452,20 @@
 ptr_glDepthRangeIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
 ptr_glDepthRangeIndexedfNV = unsafePerformIO $ getCommand "glDepthRangeIndexedfNV"
 
+-- glDepthRangeIndexedfOES -----------------------------------------------------
+
+glDepthRangeIndexedfOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @n@.
+  -> GLfloat -- ^ @f@.
+  -> m ()
+glDepthRangeIndexedfOES v1 v2 v3 = liftIO $ dyn221 ptr_glDepthRangeIndexedfOES v1 v2 v3
+
+{-# NOINLINE ptr_glDepthRangeIndexedfOES #-}
+ptr_glDepthRangeIndexedfOES :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
+ptr_glDepthRangeIndexedfOES = unsafePerformIO $ getCommand "glDepthRangeIndexedfOES"
+
 -- glDepthRangedNV -------------------------------------------------------------
 
 glDepthRangedNV
@@ -1491,31 +1519,4 @@
 {-# NOINLINE ptr_glDepthRangex #-}
 ptr_glDepthRangex :: FunPtr (GLfixed -> GLfixed -> IO ())
 ptr_glDepthRangex = unsafePerformIO $ getCommand "glDepthRangex"
-
--- glDepthRangexOES ------------------------------------------------------------
-
-glDepthRangexOES
-  :: MonadIO m
-  => GLfixed -- ^ @n@ of type @ClampedFixed@.
-  -> GLfixed -- ^ @f@ of type @ClampedFixed@.
-  -> m ()
-glDepthRangexOES v1 v2 = liftIO $ dyn224 ptr_glDepthRangexOES v1 v2
-
-{-# NOINLINE ptr_glDepthRangexOES #-}
-ptr_glDepthRangexOES :: FunPtr (GLfixed -> GLfixed -> IO ())
-ptr_glDepthRangexOES = unsafePerformIO $ getCommand "glDepthRangexOES"
-
--- glDetachObjectARB -----------------------------------------------------------
-
--- | This command is an alias for 'glDetachShader'.
-glDetachObjectARB
-  :: MonadIO m
-  => GLhandleARB -- ^ @containerObj@ of type @handleARB@.
-  -> GLhandleARB -- ^ @attachedObj@ of type @handleARB@.
-  -> m ()
-glDetachObjectARB v1 v2 = liftIO $ dyn14 ptr_glDetachObjectARB v1 v2
-
-{-# NOINLINE ptr_glDetachObjectARB #-}
-ptr_glDetachObjectARB :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
-ptr_glDetachObjectARB = unsafePerformIO $ getCommand "glDetachObjectARB"
 
diff --git a/src/Graphics/GL/Functions/F06.hs b/src/Graphics/GL/Functions/F06.hs
--- a/src/Graphics/GL/Functions/F06.hs
+++ b/src/Graphics/GL/Functions/F06.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F06 (
+  glDepthRangexOES,
+  glDetachObjectARB,
   glDetachShader,
   glDetailTexFuncSGIS,
   glDisable,
@@ -112,9 +114,7 @@
   glElementPointerAPPLE,
   glElementPointerATI,
   glEnable,
-  glEnableClientState,
-  glEnableClientStateIndexedEXT,
-  glEnableClientStateiEXT
+  glEnableClientState
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,33 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glDepthRangexOES ------------------------------------------------------------
+
+glDepthRangexOES
+  :: MonadIO m
+  => GLfixed -- ^ @n@ of type @ClampedFixed@.
+  -> GLfixed -- ^ @f@ of type @ClampedFixed@.
+  -> m ()
+glDepthRangexOES v1 v2 = liftIO $ dyn224 ptr_glDepthRangexOES v1 v2
+
+{-# NOINLINE ptr_glDepthRangexOES #-}
+ptr_glDepthRangexOES :: FunPtr (GLfixed -> GLfixed -> IO ())
+ptr_glDepthRangexOES = unsafePerformIO $ getCommand "glDepthRangexOES"
+
+-- glDetachObjectARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glDetachShader'.
+glDetachObjectARB
+  :: MonadIO m
+  => GLhandleARB -- ^ @containerObj@ of type @handleARB@.
+  -> GLhandleARB -- ^ @attachedObj@ of type @handleARB@.
+  -> m ()
+glDetachObjectARB v1 v2 = liftIO $ dyn14 ptr_glDetachObjectARB v1 v2
+
+{-# NOINLINE ptr_glDetachObjectARB #-}
+ptr_glDetachObjectARB :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
+ptr_glDetachObjectARB = unsafePerformIO $ getCommand "glDetachObjectARB"
+
 -- glDetachShader --------------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDetachShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDetachShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDetachShader.xhtml OpenGL 4.x>.
@@ -1596,30 +1623,4 @@
 {-# NOINLINE ptr_glEnableClientState #-}
 ptr_glEnableClientState :: FunPtr (GLenum -> IO ())
 ptr_glEnableClientState = unsafePerformIO $ getCommand "glEnableClientState"
-
--- glEnableClientStateIndexedEXT -----------------------------------------------
-
-glEnableClientStateIndexedEXT
-  :: MonadIO m
-  => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
-  -> GLuint -- ^ @index@.
-  -> m ()
-glEnableClientStateIndexedEXT v1 v2 = liftIO $ dyn16 ptr_glEnableClientStateIndexedEXT v1 v2
-
-{-# NOINLINE ptr_glEnableClientStateIndexedEXT #-}
-ptr_glEnableClientStateIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glEnableClientStateIndexedEXT = unsafePerformIO $ getCommand "glEnableClientStateIndexedEXT"
-
--- glEnableClientStateiEXT -----------------------------------------------------
-
-glEnableClientStateiEXT
-  :: MonadIO m
-  => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
-  -> GLuint -- ^ @index@.
-  -> m ()
-glEnableClientStateiEXT v1 v2 = liftIO $ dyn16 ptr_glEnableClientStateiEXT v1 v2
-
-{-# NOINLINE ptr_glEnableClientStateiEXT #-}
-ptr_glEnableClientStateiEXT :: FunPtr (GLenum -> GLuint -> IO ())
-ptr_glEnableClientStateiEXT = unsafePerformIO $ getCommand "glEnableClientStateiEXT"
 
diff --git a/src/Graphics/GL/Functions/F07.hs b/src/Graphics/GL/Functions/F07.hs
--- a/src/Graphics/GL/Functions/F07.hs
+++ b/src/Graphics/GL/Functions/F07.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F07 (
+  glEnableClientStateIndexedEXT,
+  glEnableClientStateiEXT,
   glEnableDriverControlQCOM,
   glEnableIndexedEXT,
   glEnableVariantClientStateEXT,
@@ -112,9 +114,7 @@
   glFogCoordf,
   glFogCoordfEXT,
   glFogCoordfv,
-  glFogCoordfvEXT,
-  glFogCoordhNV,
-  glFogCoordhvNV
+  glFogCoordfvEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,32 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glEnableClientStateIndexedEXT -----------------------------------------------
+
+glEnableClientStateIndexedEXT
+  :: MonadIO m
+  => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
+  -> GLuint -- ^ @index@.
+  -> m ()
+glEnableClientStateIndexedEXT v1 v2 = liftIO $ dyn16 ptr_glEnableClientStateIndexedEXT v1 v2
+
+{-# NOINLINE ptr_glEnableClientStateIndexedEXT #-}
+ptr_glEnableClientStateIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glEnableClientStateIndexedEXT = unsafePerformIO $ getCommand "glEnableClientStateIndexedEXT"
+
+-- glEnableClientStateiEXT -----------------------------------------------------
+
+glEnableClientStateiEXT
+  :: MonadIO m
+  => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
+  -> GLuint -- ^ @index@.
+  -> m ()
+glEnableClientStateiEXT v1 v2 = liftIO $ dyn16 ptr_glEnableClientStateiEXT v1 v2
+
+{-# NOINLINE ptr_glEnableClientStateiEXT #-}
+ptr_glEnableClientStateiEXT :: FunPtr (GLenum -> GLuint -> IO ())
+ptr_glEnableClientStateiEXT = unsafePerformIO $ getCommand "glEnableClientStateiEXT"
+
 -- glEnableDriverControlQCOM ---------------------------------------------------
 
 glEnableDriverControlQCOM
@@ -1417,29 +1443,4 @@
 {-# NOINLINE ptr_glFogCoordfvEXT #-}
 ptr_glFogCoordfvEXT :: FunPtr (Ptr GLfloat -> IO ())
 ptr_glFogCoordfvEXT = unsafePerformIO $ getCommand "glFogCoordfvEXT"
-
--- glFogCoordhNV ---------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glFogCoordhvNV'.
-glFogCoordhNV
-  :: MonadIO m
-  => GLhalfNV -- ^ @fog@ of type @Half16NV@.
-  -> m ()
-glFogCoordhNV v1 = liftIO $ dyn281 ptr_glFogCoordhNV v1
-
-{-# NOINLINE ptr_glFogCoordhNV #-}
-ptr_glFogCoordhNV :: FunPtr (GLhalfNV -> IO ())
-ptr_glFogCoordhNV = unsafePerformIO $ getCommand "glFogCoordhNV"
-
--- glFogCoordhvNV --------------------------------------------------------------
-
-glFogCoordhvNV
-  :: MonadIO m
-  => Ptr GLhalfNV -- ^ @fog@ pointing to @1@ element of type @Half16NV@.
-  -> m ()
-glFogCoordhvNV v1 = liftIO $ dyn99 ptr_glFogCoordhvNV v1
-
-{-# NOINLINE ptr_glFogCoordhvNV #-}
-ptr_glFogCoordhvNV :: FunPtr (Ptr GLhalfNV -> IO ())
-ptr_glFogCoordhvNV = unsafePerformIO $ getCommand "glFogCoordhvNV"
 
diff --git a/src/Graphics/GL/Functions/F08.hs b/src/Graphics/GL/Functions/F08.hs
--- a/src/Graphics/GL/Functions/F08.hs
+++ b/src/Graphics/GL/Functions/F08.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F08 (
+  glFogCoordhNV,
+  glFogCoordhvNV,
   glFogFuncSGIS,
   glFogf,
   glFogfv,
@@ -112,9 +114,7 @@
   glGenTransformFeedbacksNV,
   glGenVertexArrays,
   glGenVertexArraysAPPLE,
-  glGenVertexArraysOES,
-  glGenVertexShadersEXT,
-  glGenerateMipmap
+  glGenVertexArraysOES
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,31 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glFogCoordhNV ---------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glFogCoordhvNV'.
+glFogCoordhNV
+  :: MonadIO m
+  => GLhalfNV -- ^ @fog@ of type @Half16NV@.
+  -> m ()
+glFogCoordhNV v1 = liftIO $ dyn281 ptr_glFogCoordhNV v1
+
+{-# NOINLINE ptr_glFogCoordhNV #-}
+ptr_glFogCoordhNV :: FunPtr (GLhalfNV -> IO ())
+ptr_glFogCoordhNV = unsafePerformIO $ getCommand "glFogCoordhNV"
+
+-- glFogCoordhvNV --------------------------------------------------------------
+
+glFogCoordhvNV
+  :: MonadIO m
+  => Ptr GLhalfNV -- ^ @fog@ pointing to @1@ element of type @Half16NV@.
+  -> m ()
+glFogCoordhvNV v1 = liftIO $ dyn99 ptr_glFogCoordhvNV v1
+
+{-# NOINLINE ptr_glFogCoordhvNV #-}
+ptr_glFogCoordhvNV :: FunPtr (Ptr GLhalfNV -> IO ())
+ptr_glFogCoordhvNV = unsafePerformIO $ getCommand "glFogCoordhvNV"
+
 -- glFogFuncSGIS ---------------------------------------------------------------
 
 glFogFuncSGIS
@@ -1548,29 +1573,4 @@
 {-# NOINLINE ptr_glGenVertexArraysOES #-}
 ptr_glGenVertexArraysOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
 ptr_glGenVertexArraysOES = unsafePerformIO $ getCommand "glGenVertexArraysOES"
-
--- glGenVertexShadersEXT -------------------------------------------------------
-
-glGenVertexShadersEXT
-  :: MonadIO m
-  => GLuint -- ^ @range@.
-  -> m GLuint
-glGenVertexShadersEXT v1 = liftIO $ dyn298 ptr_glGenVertexShadersEXT v1
-
-{-# NOINLINE ptr_glGenVertexShadersEXT #-}
-ptr_glGenVertexShadersEXT :: FunPtr (GLuint -> IO GLuint)
-ptr_glGenVertexShadersEXT = unsafePerformIO $ getCommand "glGenVertexShadersEXT"
-
--- glGenerateMipmap ------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenerateMipmap.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenerateMipmap.xhtml OpenGL 4.x>.
-glGenerateMipmap
-  :: MonadIO m
-  => GLenum -- ^ @target@.
-  -> m ()
-glGenerateMipmap v1 = liftIO $ dyn4 ptr_glGenerateMipmap v1
-
-{-# NOINLINE ptr_glGenerateMipmap #-}
-ptr_glGenerateMipmap :: FunPtr (GLenum -> IO ())
-ptr_glGenerateMipmap = unsafePerformIO $ getCommand "glGenerateMipmap"
 
diff --git a/src/Graphics/GL/Functions/F09.hs b/src/Graphics/GL/Functions/F09.hs
--- a/src/Graphics/GL/Functions/F09.hs
+++ b/src/Graphics/GL/Functions/F09.hs
@@ -15,6 +15,8 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F09 (
+  glGenVertexShadersEXT,
+  glGenerateMipmap,
   glGenerateMipmapEXT,
   glGenerateMipmapOES,
   glGenerateMultiTexMipmapEXT,
@@ -107,14 +109,12 @@
   glGetFloati_v,
   glGetFloati_vEXT,
   glGetFloati_vNV,
+  glGetFloati_vOES,
   glGetFloatv,
   glGetFogFuncSGIS,
   glGetFragDataIndex,
   glGetFragDataIndexEXT,
-  glGetFragDataLocation,
-  glGetFragDataLocationEXT,
-  glGetFragmentLightfvSGIX,
-  glGetFragmentLightivSGIX
+  glGetFragDataLocation
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,31 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGenVertexShadersEXT -------------------------------------------------------
+
+glGenVertexShadersEXT
+  :: MonadIO m
+  => GLuint -- ^ @range@.
+  -> m GLuint
+glGenVertexShadersEXT v1 = liftIO $ dyn298 ptr_glGenVertexShadersEXT v1
+
+{-# NOINLINE ptr_glGenVertexShadersEXT #-}
+ptr_glGenVertexShadersEXT :: FunPtr (GLuint -> IO GLuint)
+ptr_glGenVertexShadersEXT = unsafePerformIO $ getCommand "glGenVertexShadersEXT"
+
+-- glGenerateMipmap ------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenerateMipmap.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenerateMipmap.xhtml OpenGL 4.x>.
+glGenerateMipmap
+  :: MonadIO m
+  => GLenum -- ^ @target@.
+  -> m ()
+glGenerateMipmap v1 = liftIO $ dyn4 ptr_glGenerateMipmap v1
+
+{-# NOINLINE ptr_glGenerateMipmap #-}
+ptr_glGenerateMipmap :: FunPtr (GLenum -> IO ())
+ptr_glGenerateMipmap = unsafePerformIO $ getCommand "glGenerateMipmap"
+
 -- glGenerateMipmapEXT ---------------------------------------------------------
 
 -- | This command is an alias for 'glGenerateMipmap'.
@@ -1519,6 +1544,21 @@
 ptr_glGetFloati_vNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
 ptr_glGetFloati_vNV = unsafePerformIO $ getCommand "glGetFloati_vNV"
 
+-- glGetFloati_vOES ------------------------------------------------------------
+
+-- | This command is an alias for 'glGetFloati_v'.
+glGetFloati_vOES
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TypeEnum@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
+  -> m ()
+glGetFloati_vOES v1 v2 v3 = liftIO $ dyn267 ptr_glGetFloati_vOES v1 v2 v3
+
+{-# NOINLINE ptr_glGetFloati_vOES #-}
+ptr_glGetFloati_vOES :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
+ptr_glGetFloati_vOES = unsafePerformIO $ getCommand "glGetFloati_vOES"
+
 -- glGetFloatv -----------------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGet.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>.
@@ -1586,46 +1626,4 @@
 {-# NOINLINE ptr_glGetFragDataLocation #-}
 ptr_glGetFragDataLocation :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
 ptr_glGetFragDataLocation = unsafePerformIO $ getCommand "glGetFragDataLocation"
-
--- glGetFragDataLocationEXT ----------------------------------------------------
-
--- | This command is an alias for 'glGetFragDataLocation'.
-glGetFragDataLocationEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
-  -> m GLint
-glGetFragDataLocationEXT v1 v2 = liftIO $ dyn310 ptr_glGetFragDataLocationEXT v1 v2
-
-{-# NOINLINE ptr_glGetFragDataLocationEXT #-}
-ptr_glGetFragDataLocationEXT :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
-ptr_glGetFragDataLocationEXT = unsafePerformIO $ getCommand "glGetFragDataLocationEXT"
-
--- glGetFragmentLightfvSGIX ----------------------------------------------------
-
-glGetFragmentLightfvSGIX
-  :: MonadIO m
-  => GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
-  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
-  -> m ()
-glGetFragmentLightfvSGIX v1 v2 v3 = liftIO $ dyn132 ptr_glGetFragmentLightfvSGIX v1 v2 v3
-
-{-# NOINLINE ptr_glGetFragmentLightfvSGIX #-}
-ptr_glGetFragmentLightfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glGetFragmentLightfvSGIX = unsafePerformIO $ getCommand "glGetFragmentLightfvSGIX"
-
--- glGetFragmentLightivSGIX ----------------------------------------------------
-
-glGetFragmentLightivSGIX
-  :: MonadIO m
-  => GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
-  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetFragmentLightivSGIX v1 v2 v3 = liftIO $ dyn133 ptr_glGetFragmentLightivSGIX v1 v2 v3
-
-{-# NOINLINE ptr_glGetFragmentLightivSGIX #-}
-ptr_glGetFragmentLightivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetFragmentLightivSGIX = unsafePerformIO $ getCommand "glGetFragmentLightivSGIX"
 
diff --git a/src/Graphics/GL/Functions/F10.hs b/src/Graphics/GL/Functions/F10.hs
--- a/src/Graphics/GL/Functions/F10.hs
+++ b/src/Graphics/GL/Functions/F10.hs
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F10 (
+  glGetFragDataLocationEXT,
+  glGetFragmentLightfvSGIX,
+  glGetFragmentLightivSGIX,
   glGetFragmentMaterialfvSGIX,
   glGetFragmentMaterialivSGIX,
   glGetFramebufferAttachmentParameteriv,
@@ -111,10 +114,7 @@
   glGetNamedFramebufferAttachmentParameteriv,
   glGetNamedFramebufferAttachmentParameterivEXT,
   glGetNamedFramebufferParameteriv,
-  glGetNamedFramebufferParameterivEXT,
-  glGetNamedProgramLocalParameterIivEXT,
-  glGetNamedProgramLocalParameterIuivEXT,
-  glGetNamedProgramLocalParameterdvEXT
+  glGetNamedFramebufferParameterivEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,48 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetFragDataLocationEXT ----------------------------------------------------
+
+-- | This command is an alias for 'glGetFragDataLocation'.
+glGetFragDataLocationEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
+  -> m GLint
+glGetFragDataLocationEXT v1 v2 = liftIO $ dyn310 ptr_glGetFragDataLocationEXT v1 v2
+
+{-# NOINLINE ptr_glGetFragDataLocationEXT #-}
+ptr_glGetFragDataLocationEXT :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
+ptr_glGetFragDataLocationEXT = unsafePerformIO $ getCommand "glGetFragDataLocationEXT"
+
+-- glGetFragmentLightfvSGIX ----------------------------------------------------
+
+glGetFragmentLightfvSGIX
+  :: MonadIO m
+  => GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
+  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
+  -> m ()
+glGetFragmentLightfvSGIX v1 v2 v3 = liftIO $ dyn132 ptr_glGetFragmentLightfvSGIX v1 v2 v3
+
+{-# NOINLINE ptr_glGetFragmentLightfvSGIX #-}
+ptr_glGetFragmentLightfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glGetFragmentLightfvSGIX = unsafePerformIO $ getCommand "glGetFragmentLightfvSGIX"
+
+-- glGetFragmentLightivSGIX ----------------------------------------------------
+
+glGetFragmentLightivSGIX
+  :: MonadIO m
+  => GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
+  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetFragmentLightivSGIX v1 v2 v3 = liftIO $ dyn133 ptr_glGetFragmentLightivSGIX v1 v2 v3
+
+{-# NOINLINE ptr_glGetFragmentLightivSGIX #-}
+ptr_glGetFragmentLightivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetFragmentLightivSGIX = unsafePerformIO $ getCommand "glGetFragmentLightivSGIX"
+
 -- glGetFragmentMaterialfvSGIX -------------------------------------------------
 
 glGetFragmentMaterialfvSGIX
@@ -1540,49 +1582,4 @@
 {-# NOINLINE ptr_glGetNamedFramebufferParameterivEXT #-}
 ptr_glGetNamedFramebufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
 ptr_glGetNamedFramebufferParameterivEXT = unsafePerformIO $ getCommand "glGetNamedFramebufferParameterivEXT"
-
--- glGetNamedProgramLocalParameterIivEXT ---------------------------------------
-
-glGetNamedProgramLocalParameterIivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
-  -> m ()
-glGetNamedProgramLocalParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn364 ptr_glGetNamedProgramLocalParameterIivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetNamedProgramLocalParameterIivEXT #-}
-ptr_glGetNamedProgramLocalParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
-ptr_glGetNamedProgramLocalParameterIivEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterIivEXT"
-
--- glGetNamedProgramLocalParameterIuivEXT --------------------------------------
-
-glGetNamedProgramLocalParameterIuivEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glGetNamedProgramLocalParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetNamedProgramLocalParameterIuivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetNamedProgramLocalParameterIuivEXT #-}
-ptr_glGetNamedProgramLocalParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
-ptr_glGetNamedProgramLocalParameterIuivEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterIuivEXT"
-
--- glGetNamedProgramLocalParameterdvEXT ----------------------------------------
-
-glGetNamedProgramLocalParameterdvEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
-  -> m ()
-glGetNamedProgramLocalParameterdvEXT v1 v2 v3 v4 = liftIO $ dyn366 ptr_glGetNamedProgramLocalParameterdvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glGetNamedProgramLocalParameterdvEXT #-}
-ptr_glGetNamedProgramLocalParameterdvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
-ptr_glGetNamedProgramLocalParameterdvEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterdvEXT"
 
diff --git a/src/Graphics/GL/Functions/F11.hs b/src/Graphics/GL/Functions/F11.hs
--- a/src/Graphics/GL/Functions/F11.hs
+++ b/src/Graphics/GL/Functions/F11.hs
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F11 (
+  glGetNamedProgramLocalParameterIivEXT,
+  glGetNamedProgramLocalParameterIuivEXT,
+  glGetNamedProgramLocalParameterdvEXT,
   glGetNamedProgramLocalParameterfvEXT,
   glGetNamedProgramStringEXT,
   glGetNamedProgramivEXT,
@@ -111,10 +114,7 @@
   glGetQueryBufferObjectui64v,
   glGetQueryBufferObjectuiv,
   glGetQueryIndexediv,
-  glGetQueryObjecti64v,
-  glGetQueryObjecti64vEXT,
-  glGetQueryObjectiv,
-  glGetQueryObjectivARB
+  glGetQueryObjecti64v
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,51 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetNamedProgramLocalParameterIivEXT ---------------------------------------
+
+glGetNamedProgramLocalParameterIivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glGetNamedProgramLocalParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn364 ptr_glGetNamedProgramLocalParameterIivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetNamedProgramLocalParameterIivEXT #-}
+ptr_glGetNamedProgramLocalParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
+ptr_glGetNamedProgramLocalParameterIivEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterIivEXT"
+
+-- glGetNamedProgramLocalParameterIuivEXT --------------------------------------
+
+glGetNamedProgramLocalParameterIuivEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glGetNamedProgramLocalParameterIuivEXT v1 v2 v3 v4 = liftIO $ dyn365 ptr_glGetNamedProgramLocalParameterIuivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetNamedProgramLocalParameterIuivEXT #-}
+ptr_glGetNamedProgramLocalParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
+ptr_glGetNamedProgramLocalParameterIuivEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterIuivEXT"
+
+-- glGetNamedProgramLocalParameterdvEXT ----------------------------------------
+
+glGetNamedProgramLocalParameterdvEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
+  -> m ()
+glGetNamedProgramLocalParameterdvEXT v1 v2 v3 v4 = liftIO $ dyn366 ptr_glGetNamedProgramLocalParameterdvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glGetNamedProgramLocalParameterdvEXT #-}
+ptr_glGetNamedProgramLocalParameterdvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
+ptr_glGetNamedProgramLocalParameterdvEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterdvEXT"
+
 -- glGetNamedProgramLocalParameterfvEXT ----------------------------------------
 
 glGetNamedProgramLocalParameterfvEXT
@@ -1572,49 +1617,4 @@
 {-# NOINLINE ptr_glGetQueryObjecti64v #-}
 ptr_glGetQueryObjecti64v :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
 ptr_glGetQueryObjecti64v = unsafePerformIO $ getCommand "glGetQueryObjecti64v"
-
--- glGetQueryObjecti64vEXT -----------------------------------------------------
-
--- | This command is an alias for 'glGetQueryObjecti64v'.
-glGetQueryObjecti64vEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
-  -> m ()
-glGetQueryObjecti64vEXT v1 v2 v3 = liftIO $ dyn359 ptr_glGetQueryObjecti64vEXT v1 v2 v3
-
-{-# NOINLINE ptr_glGetQueryObjecti64vEXT #-}
-ptr_glGetQueryObjecti64vEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
-ptr_glGetQueryObjecti64vEXT = unsafePerformIO $ getCommand "glGetQueryObjecti64vEXT"
-
--- glGetQueryObjectiv ----------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetQueryObject.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetQueryObject.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetQueryObject.xhtml OpenGL 4.x>.
-glGetQueryObjectiv
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetQueryObjectiv v1 v2 v3 = liftIO $ dyn334 ptr_glGetQueryObjectiv v1 v2 v3
-
-{-# NOINLINE ptr_glGetQueryObjectiv #-}
-ptr_glGetQueryObjectiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetQueryObjectiv = unsafePerformIO $ getCommand "glGetQueryObjectiv"
-
--- glGetQueryObjectivARB -------------------------------------------------------
-
--- | This command is an alias for 'glGetQueryObjectiv'.
-glGetQueryObjectivARB
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
-  -> m ()
-glGetQueryObjectivARB v1 v2 v3 = liftIO $ dyn334 ptr_glGetQueryObjectivARB v1 v2 v3
-
-{-# NOINLINE ptr_glGetQueryObjectivARB #-}
-ptr_glGetQueryObjectivARB :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glGetQueryObjectivARB = unsafePerformIO $ getCommand "glGetQueryObjectivARB"
 
diff --git a/src/Graphics/GL/Functions/F12.hs b/src/Graphics/GL/Functions/F12.hs
--- a/src/Graphics/GL/Functions/F12.hs
+++ b/src/Graphics/GL/Functions/F12.hs
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F12 (
+  glGetQueryObjecti64vEXT,
+  glGetQueryObjectiv,
+  glGetQueryObjectivARB,
   glGetQueryObjectivEXT,
   glGetQueryObjectui64v,
   glGetQueryObjectui64vEXT,
@@ -111,10 +114,7 @@
   glGetUniformLocation,
   glGetUniformLocationARB,
   glGetUniformOffsetEXT,
-  glGetUniformSubroutineuiv,
-  glGetUniformdv,
-  glGetUniformfv,
-  glGetUniformfvARB
+  glGetUniformSubroutineuiv
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,51 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetQueryObjecti64vEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glGetQueryObjecti64v'.
+glGetQueryObjecti64vEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
+  -> m ()
+glGetQueryObjecti64vEXT v1 v2 v3 = liftIO $ dyn359 ptr_glGetQueryObjecti64vEXT v1 v2 v3
+
+{-# NOINLINE ptr_glGetQueryObjecti64vEXT #-}
+ptr_glGetQueryObjecti64vEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
+ptr_glGetQueryObjecti64vEXT = unsafePerformIO $ getCommand "glGetQueryObjecti64vEXT"
+
+-- glGetQueryObjectiv ----------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetQueryObject.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetQueryObject.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetQueryObject.xhtml OpenGL 4.x>.
+glGetQueryObjectiv
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetQueryObjectiv v1 v2 v3 = liftIO $ dyn334 ptr_glGetQueryObjectiv v1 v2 v3
+
+{-# NOINLINE ptr_glGetQueryObjectiv #-}
+ptr_glGetQueryObjectiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetQueryObjectiv = unsafePerformIO $ getCommand "glGetQueryObjectiv"
+
+-- glGetQueryObjectivARB -------------------------------------------------------
+
+-- | This command is an alias for 'glGetQueryObjectiv'.
+glGetQueryObjectivARB
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
+  -> m ()
+glGetQueryObjectivARB v1 v2 v3 = liftIO $ dyn334 ptr_glGetQueryObjectivARB v1 v2 v3
+
+{-# NOINLINE ptr_glGetQueryObjectivARB #-}
+ptr_glGetQueryObjectivARB :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glGetQueryObjectivARB = unsafePerformIO $ getCommand "glGetQueryObjectivARB"
+
 -- glGetQueryObjectivEXT -------------------------------------------------------
 
 -- | This command is an alias for 'glGetQueryObjectiv'.
@@ -1581,49 +1626,4 @@
 {-# NOINLINE ptr_glGetUniformSubroutineuiv #-}
 ptr_glGetUniformSubroutineuiv :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
 ptr_glGetUniformSubroutineuiv = unsafePerformIO $ getCommand "glGetUniformSubroutineuiv"
-
--- glGetUniformdv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
-glGetUniformdv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLdouble@.
-  -> m ()
-glGetUniformdv v1 v2 v3 = liftIO $ dyn430 ptr_glGetUniformdv v1 v2 v3
-
-{-# NOINLINE ptr_glGetUniformdv #-}
-ptr_glGetUniformdv :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
-ptr_glGetUniformdv = unsafePerformIO $ getCommand "glGetUniformdv"
-
--- glGetUniformfv --------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
-glGetUniformfv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLfloat@.
-  -> m ()
-glGetUniformfv v1 v2 v3 = liftIO $ dyn431 ptr_glGetUniformfv v1 v2 v3
-
-{-# NOINLINE ptr_glGetUniformfv #-}
-ptr_glGetUniformfv :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
-ptr_glGetUniformfv = unsafePerformIO $ getCommand "glGetUniformfv"
-
--- glGetUniformfvARB -----------------------------------------------------------
-
--- | This command is an alias for 'glGetUniformfv'.
-glGetUniformfvARB
-  :: MonadIO m
-  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
-  -> GLint -- ^ @location@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(programObj,location)@ elements of type @GLfloat@.
-  -> m ()
-glGetUniformfvARB v1 v2 v3 = liftIO $ dyn432 ptr_glGetUniformfvARB v1 v2 v3
-
-{-# NOINLINE ptr_glGetUniformfvARB #-}
-ptr_glGetUniformfvARB :: FunPtr (GLhandleARB -> GLint -> Ptr GLfloat -> IO ())
-ptr_glGetUniformfvARB = unsafePerformIO $ getCommand "glGetUniformfvARB"
 
diff --git a/src/Graphics/GL/Functions/F13.hs b/src/Graphics/GL/Functions/F13.hs
--- a/src/Graphics/GL/Functions/F13.hs
+++ b/src/Graphics/GL/Functions/F13.hs
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F13 (
+  glGetUniformdv,
+  glGetUniformfv,
+  glGetUniformfvARB,
   glGetUniformi64vARB,
   glGetUniformi64vNV,
   glGetUniformiv,
@@ -111,10 +114,7 @@
   glGetnUniformuiv,
   glGetnUniformuivARB,
   glGetnUniformuivKHR,
-  glGlobalAlphaFactorbSUN,
-  glGlobalAlphaFactordSUN,
-  glGlobalAlphaFactorfSUN,
-  glGlobalAlphaFactoriSUN
+  glGlobalAlphaFactorbSUN
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,51 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGetUniformdv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
+glGetUniformdv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLdouble@.
+  -> m ()
+glGetUniformdv v1 v2 v3 = liftIO $ dyn430 ptr_glGetUniformdv v1 v2 v3
+
+{-# NOINLINE ptr_glGetUniformdv #-}
+ptr_glGetUniformdv :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
+ptr_glGetUniformdv = unsafePerformIO $ getCommand "glGetUniformdv"
+
+-- glGetUniformfv --------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>.
+glGetUniformfv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLfloat@.
+  -> m ()
+glGetUniformfv v1 v2 v3 = liftIO $ dyn431 ptr_glGetUniformfv v1 v2 v3
+
+{-# NOINLINE ptr_glGetUniformfv #-}
+ptr_glGetUniformfv :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
+ptr_glGetUniformfv = unsafePerformIO $ getCommand "glGetUniformfv"
+
+-- glGetUniformfvARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glGetUniformfv'.
+glGetUniformfvARB
+  :: MonadIO m
+  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
+  -> GLint -- ^ @location@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(programObj,location)@ elements of type @GLfloat@.
+  -> m ()
+glGetUniformfvARB v1 v2 v3 = liftIO $ dyn432 ptr_glGetUniformfvARB v1 v2 v3
+
+{-# NOINLINE ptr_glGetUniformfvARB #-}
+ptr_glGetUniformfvARB :: FunPtr (GLhandleARB -> GLint -> Ptr GLfloat -> IO ())
+ptr_glGetUniformfvARB = unsafePerformIO $ getCommand "glGetUniformfvARB"
+
 -- glGetUniformi64vARB ---------------------------------------------------------
 
 glGetUniformi64vARB
@@ -1575,40 +1620,4 @@
 {-# NOINLINE ptr_glGlobalAlphaFactorbSUN #-}
 ptr_glGlobalAlphaFactorbSUN :: FunPtr (GLbyte -> IO ())
 ptr_glGlobalAlphaFactorbSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactorbSUN"
-
--- glGlobalAlphaFactordSUN -----------------------------------------------------
-
-glGlobalAlphaFactordSUN
-  :: MonadIO m
-  => GLdouble -- ^ @factor@.
-  -> m ()
-glGlobalAlphaFactordSUN v1 = liftIO $ dyn78 ptr_glGlobalAlphaFactordSUN v1
-
-{-# NOINLINE ptr_glGlobalAlphaFactordSUN #-}
-ptr_glGlobalAlphaFactordSUN :: FunPtr (GLdouble -> IO ())
-ptr_glGlobalAlphaFactordSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactordSUN"
-
--- glGlobalAlphaFactorfSUN -----------------------------------------------------
-
-glGlobalAlphaFactorfSUN
-  :: MonadIO m
-  => GLfloat -- ^ @factor@.
-  -> m ()
-glGlobalAlphaFactorfSUN v1 = liftIO $ dyn79 ptr_glGlobalAlphaFactorfSUN v1
-
-{-# NOINLINE ptr_glGlobalAlphaFactorfSUN #-}
-ptr_glGlobalAlphaFactorfSUN :: FunPtr (GLfloat -> IO ())
-ptr_glGlobalAlphaFactorfSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactorfSUN"
-
--- glGlobalAlphaFactoriSUN -----------------------------------------------------
-
-glGlobalAlphaFactoriSUN
-  :: MonadIO m
-  => GLint -- ^ @factor@.
-  -> m ()
-glGlobalAlphaFactoriSUN v1 = liftIO $ dyn12 ptr_glGlobalAlphaFactoriSUN v1
-
-{-# NOINLINE ptr_glGlobalAlphaFactoriSUN #-}
-ptr_glGlobalAlphaFactoriSUN :: FunPtr (GLint -> IO ())
-ptr_glGlobalAlphaFactoriSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactoriSUN"
 
diff --git a/src/Graphics/GL/Functions/F14.hs b/src/Graphics/GL/Functions/F14.hs
--- a/src/Graphics/GL/Functions/F14.hs
+++ b/src/Graphics/GL/Functions/F14.hs
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F14 (
+  glGlobalAlphaFactordSUN,
+  glGlobalAlphaFactorfSUN,
+  glGlobalAlphaFactoriSUN,
   glGlobalAlphaFactorsSUN,
   glGlobalAlphaFactorubSUN,
   glGlobalAlphaFactoruiSUN,
@@ -111,10 +114,7 @@
   glIsTextureHandleResidentNV,
   glIsTransformFeedback,
   glIsTransformFeedbackNV,
-  glIsVariantEnabledEXT,
-  glIsVertexArray,
-  glIsVertexArrayAPPLE,
-  glIsVertexArrayOES
+  glIsVariantEnabledEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,42 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glGlobalAlphaFactordSUN -----------------------------------------------------
+
+glGlobalAlphaFactordSUN
+  :: MonadIO m
+  => GLdouble -- ^ @factor@.
+  -> m ()
+glGlobalAlphaFactordSUN v1 = liftIO $ dyn78 ptr_glGlobalAlphaFactordSUN v1
+
+{-# NOINLINE ptr_glGlobalAlphaFactordSUN #-}
+ptr_glGlobalAlphaFactordSUN :: FunPtr (GLdouble -> IO ())
+ptr_glGlobalAlphaFactordSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactordSUN"
+
+-- glGlobalAlphaFactorfSUN -----------------------------------------------------
+
+glGlobalAlphaFactorfSUN
+  :: MonadIO m
+  => GLfloat -- ^ @factor@.
+  -> m ()
+glGlobalAlphaFactorfSUN v1 = liftIO $ dyn79 ptr_glGlobalAlphaFactorfSUN v1
+
+{-# NOINLINE ptr_glGlobalAlphaFactorfSUN #-}
+ptr_glGlobalAlphaFactorfSUN :: FunPtr (GLfloat -> IO ())
+ptr_glGlobalAlphaFactorfSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactorfSUN"
+
+-- glGlobalAlphaFactoriSUN -----------------------------------------------------
+
+glGlobalAlphaFactoriSUN
+  :: MonadIO m
+  => GLint -- ^ @factor@.
+  -> m ()
+glGlobalAlphaFactoriSUN v1 = liftIO $ dyn12 ptr_glGlobalAlphaFactoriSUN v1
+
+{-# NOINLINE ptr_glGlobalAlphaFactoriSUN #-}
+ptr_glGlobalAlphaFactoriSUN :: FunPtr (GLint -> IO ())
+ptr_glGlobalAlphaFactoriSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactoriSUN"
+
 -- glGlobalAlphaFactorsSUN -----------------------------------------------------
 
 glGlobalAlphaFactorsSUN
@@ -1413,43 +1449,4 @@
 {-# NOINLINE ptr_glIsVariantEnabledEXT #-}
 ptr_glIsVariantEnabledEXT :: FunPtr (GLuint -> GLenum -> IO GLboolean)
 ptr_glIsVariantEnabledEXT = unsafePerformIO $ getCommand "glIsVariantEnabledEXT"
-
--- glIsVertexArray -------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsVertexArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsVertexArray.xhtml OpenGL 4.x>.
-glIsVertexArray
-  :: MonadIO m
-  => GLuint -- ^ @array@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsVertexArray v1 = liftIO $ dyn273 ptr_glIsVertexArray v1
-
-{-# NOINLINE ptr_glIsVertexArray #-}
-ptr_glIsVertexArray :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsVertexArray = unsafePerformIO $ getCommand "glIsVertexArray"
-
--- glIsVertexArrayAPPLE --------------------------------------------------------
-
--- | This command is an alias for 'glIsVertexArray'.
-glIsVertexArrayAPPLE
-  :: MonadIO m
-  => GLuint -- ^ @array@.
-  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
-glIsVertexArrayAPPLE v1 = liftIO $ dyn273 ptr_glIsVertexArrayAPPLE v1
-
-{-# NOINLINE ptr_glIsVertexArrayAPPLE #-}
-ptr_glIsVertexArrayAPPLE :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsVertexArrayAPPLE = unsafePerformIO $ getCommand "glIsVertexArrayAPPLE"
-
--- glIsVertexArrayOES ----------------------------------------------------------
-
--- | This command is an alias for 'glIsVertexArray'.
-glIsVertexArrayOES
-  :: MonadIO m
-  => GLuint -- ^ @array@.
-  -> m GLboolean
-glIsVertexArrayOES v1 = liftIO $ dyn273 ptr_glIsVertexArrayOES v1
-
-{-# NOINLINE ptr_glIsVertexArrayOES #-}
-ptr_glIsVertexArrayOES :: FunPtr (GLuint -> IO GLboolean)
-ptr_glIsVertexArrayOES = unsafePerformIO $ getCommand "glIsVertexArrayOES"
 
diff --git a/src/Graphics/GL/Functions/F15.hs b/src/Graphics/GL/Functions/F15.hs
--- a/src/Graphics/GL/Functions/F15.hs
+++ b/src/Graphics/GL/Functions/F15.hs
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F15 (
+  glIsVertexArray,
+  glIsVertexArrayAPPLE,
+  glIsVertexArrayOES,
   glIsVertexAttribEnabledAPPLE,
   glLabelObjectEXT,
   glLightEnviSGIX,
@@ -111,10 +114,7 @@
   glMaterialx,
   glMaterialxOES,
   glMaterialxv,
-  glMaterialxvOES,
-  glMatrixFrustumEXT,
-  glMatrixIndexPointerARB,
-  glMatrixIndexPointerOES
+  glMaterialxvOES
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,45 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glIsVertexArray -------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsVertexArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsVertexArray.xhtml OpenGL 4.x>.
+glIsVertexArray
+  :: MonadIO m
+  => GLuint -- ^ @array@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsVertexArray v1 = liftIO $ dyn273 ptr_glIsVertexArray v1
+
+{-# NOINLINE ptr_glIsVertexArray #-}
+ptr_glIsVertexArray :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsVertexArray = unsafePerformIO $ getCommand "glIsVertexArray"
+
+-- glIsVertexArrayAPPLE --------------------------------------------------------
+
+-- | This command is an alias for 'glIsVertexArray'.
+glIsVertexArrayAPPLE
+  :: MonadIO m
+  => GLuint -- ^ @array@.
+  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
+glIsVertexArrayAPPLE v1 = liftIO $ dyn273 ptr_glIsVertexArrayAPPLE v1
+
+{-# NOINLINE ptr_glIsVertexArrayAPPLE #-}
+ptr_glIsVertexArrayAPPLE :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsVertexArrayAPPLE = unsafePerformIO $ getCommand "glIsVertexArrayAPPLE"
+
+-- glIsVertexArrayOES ----------------------------------------------------------
+
+-- | This command is an alias for 'glIsVertexArray'.
+glIsVertexArrayOES
+  :: MonadIO m
+  => GLuint -- ^ @array@.
+  -> m GLboolean
+glIsVertexArrayOES v1 = liftIO $ dyn273 ptr_glIsVertexArrayOES v1
+
+{-# NOINLINE ptr_glIsVertexArrayOES #-}
+ptr_glIsVertexArrayOES :: FunPtr (GLuint -> IO GLboolean)
+ptr_glIsVertexArrayOES = unsafePerformIO $ getCommand "glIsVertexArrayOES"
+
 -- glIsVertexAttribEnabledAPPLE ------------------------------------------------
 
 glIsVertexAttribEnabledAPPLE
@@ -1520,52 +1559,4 @@
 {-# NOINLINE ptr_glMaterialxvOES #-}
 ptr_glMaterialxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
 ptr_glMaterialxvOES = unsafePerformIO $ getCommand "glMaterialxvOES"
-
--- glMatrixFrustumEXT ----------------------------------------------------------
-
-glMatrixFrustumEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
-  -> GLdouble -- ^ @left@.
-  -> GLdouble -- ^ @right@.
-  -> GLdouble -- ^ @bottom@.
-  -> GLdouble -- ^ @top@.
-  -> GLdouble -- ^ @zNear@.
-  -> GLdouble -- ^ @zFar@.
-  -> m ()
-glMatrixFrustumEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn516 ptr_glMatrixFrustumEXT v1 v2 v3 v4 v5 v6 v7
-
-{-# NOINLINE ptr_glMatrixFrustumEXT #-}
-ptr_glMatrixFrustumEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-ptr_glMatrixFrustumEXT = unsafePerformIO $ getCommand "glMatrixFrustumEXT"
-
--- glMatrixIndexPointerARB -----------------------------------------------------
-
-glMatrixIndexPointerARB
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@ of type @MatrixIndexPointerTypeARB@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glMatrixIndexPointerARB v1 v2 v3 v4 = liftIO $ dyn126 ptr_glMatrixIndexPointerARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMatrixIndexPointerARB #-}
-ptr_glMatrixIndexPointerARB :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glMatrixIndexPointerARB = unsafePerformIO $ getCommand "glMatrixIndexPointerARB"
-
--- glMatrixIndexPointerOES -----------------------------------------------------
-
-glMatrixIndexPointerOES
-  :: MonadIO m
-  => GLint -- ^ @size@.
-  -> GLenum -- ^ @type@.
-  -> GLsizei -- ^ @stride@.
-  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
-  -> m ()
-glMatrixIndexPointerOES v1 v2 v3 v4 = liftIO $ dyn126 ptr_glMatrixIndexPointerOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glMatrixIndexPointerOES #-}
-ptr_glMatrixIndexPointerOES :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
-ptr_glMatrixIndexPointerOES = unsafePerformIO $ getCommand "glMatrixIndexPointerOES"
 
diff --git a/src/Graphics/GL/Functions/F16.hs b/src/Graphics/GL/Functions/F16.hs
--- a/src/Graphics/GL/Functions/F16.hs
+++ b/src/Graphics/GL/Functions/F16.hs
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F16 (
+  glMatrixFrustumEXT,
+  glMatrixIndexPointerARB,
+  glMatrixIndexPointerOES,
   glMatrixIndexubvARB,
   glMatrixIndexuivARB,
   glMatrixIndexusvARB,
@@ -111,10 +114,7 @@
   glMultiTexCoord2bvOES,
   glMultiTexCoord2d,
   glMultiTexCoord2dARB,
-  glMultiTexCoord2dv,
-  glMultiTexCoord2dvARB,
-  glMultiTexCoord2f,
-  glMultiTexCoord2fARB
+  glMultiTexCoord2dv
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,54 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glMatrixFrustumEXT ----------------------------------------------------------
+
+glMatrixFrustumEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type [MatrixMode](Graphics-GL-Groups.html#MatrixMode).
+  -> GLdouble -- ^ @left@.
+  -> GLdouble -- ^ @right@.
+  -> GLdouble -- ^ @bottom@.
+  -> GLdouble -- ^ @top@.
+  -> GLdouble -- ^ @zNear@.
+  -> GLdouble -- ^ @zFar@.
+  -> m ()
+glMatrixFrustumEXT v1 v2 v3 v4 v5 v6 v7 = liftIO $ dyn516 ptr_glMatrixFrustumEXT v1 v2 v3 v4 v5 v6 v7
+
+{-# NOINLINE ptr_glMatrixFrustumEXT #-}
+ptr_glMatrixFrustumEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
+ptr_glMatrixFrustumEXT = unsafePerformIO $ getCommand "glMatrixFrustumEXT"
+
+-- glMatrixIndexPointerARB -----------------------------------------------------
+
+glMatrixIndexPointerARB
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@ of type @MatrixIndexPointerTypeARB@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glMatrixIndexPointerARB v1 v2 v3 v4 = liftIO $ dyn126 ptr_glMatrixIndexPointerARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMatrixIndexPointerARB #-}
+ptr_glMatrixIndexPointerARB :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glMatrixIndexPointerARB = unsafePerformIO $ getCommand "glMatrixIndexPointerARB"
+
+-- glMatrixIndexPointerOES -----------------------------------------------------
+
+glMatrixIndexPointerOES
+  :: MonadIO m
+  => GLint -- ^ @size@.
+  -> GLenum -- ^ @type@.
+  -> GLsizei -- ^ @stride@.
+  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
+  -> m ()
+glMatrixIndexPointerOES v1 v2 v3 v4 = liftIO $ dyn126 ptr_glMatrixIndexPointerOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glMatrixIndexPointerOES #-}
+ptr_glMatrixIndexPointerOES :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
+ptr_glMatrixIndexPointerOES = unsafePerformIO $ getCommand "glMatrixIndexPointerOES"
+
 -- glMatrixIndexubvARB ---------------------------------------------------------
 
 glMatrixIndexubvARB
@@ -1510,48 +1558,4 @@
 {-# NOINLINE ptr_glMultiTexCoord2dv #-}
 ptr_glMultiTexCoord2dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
 ptr_glMultiTexCoord2dv = unsafePerformIO $ getCommand "glMultiTexCoord2dv"
-
--- glMultiTexCoord2dvARB -------------------------------------------------------
-
--- | This command is an alias for 'glMultiTexCoord2dv'.
-glMultiTexCoord2dvARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
-  -> m ()
-glMultiTexCoord2dvARB v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord2dvARB v1 v2
-
-{-# NOINLINE ptr_glMultiTexCoord2dvARB #-}
-ptr_glMultiTexCoord2dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
-ptr_glMultiTexCoord2dvARB = unsafePerformIO $ getCommand "glMultiTexCoord2dvARB"
-
--- glMultiTexCoord2f -----------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2fv'.
-glMultiTexCoord2f
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord2f v1 v2 v3 = liftIO $ dyn548 ptr_glMultiTexCoord2f v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2f #-}
-ptr_glMultiTexCoord2f :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
-ptr_glMultiTexCoord2f = unsafePerformIO $ getCommand "glMultiTexCoord2f"
-
--- glMultiTexCoord2fARB --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glMultiTexCoord2fv'. This command is an alias for 'glMultiTexCoord2f'.
-glMultiTexCoord2fARB
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @TextureUnit@.
-  -> GLfloat -- ^ @s@ of type @CoordF@.
-  -> GLfloat -- ^ @t@ of type @CoordF@.
-  -> m ()
-glMultiTexCoord2fARB v1 v2 v3 = liftIO $ dyn548 ptr_glMultiTexCoord2fARB v1 v2 v3
-
-{-# NOINLINE ptr_glMultiTexCoord2fARB #-}
-ptr_glMultiTexCoord2fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
-ptr_glMultiTexCoord2fARB = unsafePerformIO $ getCommand "glMultiTexCoord2fARB"
 
diff --git a/src/Graphics/GL/Functions/F17.hs b/src/Graphics/GL/Functions/F17.hs
--- a/src/Graphics/GL/Functions/F17.hs
+++ b/src/Graphics/GL/Functions/F17.hs
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F17 (
+  glMultiTexCoord2dvARB,
+  glMultiTexCoord2f,
+  glMultiTexCoord2fARB,
   glMultiTexCoord2fv,
   glMultiTexCoord2fvARB,
   glMultiTexCoord2hNV,
@@ -111,10 +114,7 @@
   glNamedBufferPageCommitmentARB,
   glNamedBufferPageCommitmentEXT,
   glNamedBufferStorage,
-  glNamedBufferStorageEXT,
-  glNamedBufferSubData,
-  glNamedBufferSubDataEXT,
-  glNamedCopyBufferSubDataEXT
+  glNamedBufferStorageEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,50 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glMultiTexCoord2dvARB -------------------------------------------------------
+
+-- | This command is an alias for 'glMultiTexCoord2dv'.
+glMultiTexCoord2dvARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
+  -> m ()
+glMultiTexCoord2dvARB v1 v2 = liftIO $ dyn93 ptr_glMultiTexCoord2dvARB v1 v2
+
+{-# NOINLINE ptr_glMultiTexCoord2dvARB #-}
+ptr_glMultiTexCoord2dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
+ptr_glMultiTexCoord2dvARB = unsafePerformIO $ getCommand "glMultiTexCoord2dvARB"
+
+-- glMultiTexCoord2f -----------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glMultiTexCoord2fv'.
+glMultiTexCoord2f
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord2f v1 v2 v3 = liftIO $ dyn548 ptr_glMultiTexCoord2f v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2f #-}
+ptr_glMultiTexCoord2f :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
+ptr_glMultiTexCoord2f = unsafePerformIO $ getCommand "glMultiTexCoord2f"
+
+-- glMultiTexCoord2fARB --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glMultiTexCoord2fv'. This command is an alias for 'glMultiTexCoord2f'.
+glMultiTexCoord2fARB
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @TextureUnit@.
+  -> GLfloat -- ^ @s@ of type @CoordF@.
+  -> GLfloat -- ^ @t@ of type @CoordF@.
+  -> m ()
+glMultiTexCoord2fARB v1 v2 v3 = liftIO $ dyn548 ptr_glMultiTexCoord2fARB v1 v2 v3
+
+{-# NOINLINE ptr_glMultiTexCoord2fARB #-}
+ptr_glMultiTexCoord2fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
+ptr_glMultiTexCoord2fARB = unsafePerformIO $ getCommand "glMultiTexCoord2fARB"
+
 -- glMultiTexCoord2fv ----------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x>.
@@ -1606,52 +1650,4 @@
 {-# NOINLINE ptr_glNamedBufferStorageEXT #-}
 ptr_glNamedBufferStorageEXT :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
 ptr_glNamedBufferStorageEXT = unsafePerformIO $ getCommand "glNamedBufferStorageEXT"
-
--- glNamedBufferSubData --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferSubData.xhtml OpenGL 4.x>.
-glNamedBufferSubData
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
-  -> m ()
-glNamedBufferSubData v1 v2 v3 v4 = liftIO $ dyn362 ptr_glNamedBufferSubData v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferSubData #-}
-ptr_glNamedBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
-ptr_glNamedBufferSubData = unsafePerformIO $ getCommand "glNamedBufferSubData"
-
--- glNamedBufferSubDataEXT -----------------------------------------------------
-
--- | This command is an alias for 'glNamedBufferSubData'.
-glNamedBufferSubDataEXT
-  :: MonadIO m
-  => GLuint -- ^ @buffer@.
-  -> GLintptr -- ^ @offset@.
-  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
-  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
-  -> m ()
-glNamedBufferSubDataEXT v1 v2 v3 v4 = liftIO $ dyn362 ptr_glNamedBufferSubDataEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glNamedBufferSubDataEXT #-}
-ptr_glNamedBufferSubDataEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
-ptr_glNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedBufferSubDataEXT"
-
--- glNamedCopyBufferSubDataEXT -------------------------------------------------
-
-glNamedCopyBufferSubDataEXT
-  :: MonadIO m
-  => GLuint -- ^ @readBuffer@.
-  -> GLuint -- ^ @writeBuffer@.
-  -> GLintptr -- ^ @readOffset@.
-  -> GLintptr -- ^ @writeOffset@.
-  -> GLsizeiptr -- ^ @size@.
-  -> m ()
-glNamedCopyBufferSubDataEXT v1 v2 v3 v4 v5 = liftIO $ dyn174 ptr_glNamedCopyBufferSubDataEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glNamedCopyBufferSubDataEXT #-}
-ptr_glNamedCopyBufferSubDataEXT :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
-ptr_glNamedCopyBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedCopyBufferSubDataEXT"
 
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
@@ -15,6 +15,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F18 (
+  glNamedBufferSubData,
+  glNamedBufferSubDataEXT,
+  glNamedCopyBufferSubDataEXT,
   glNamedFramebufferDrawBuffer,
   glNamedFramebufferDrawBuffers,
   glNamedFramebufferParameteri,
@@ -111,10 +114,7 @@
   glPathCoordsNV,
   glPathCoverDepthFuncNV,
   glPathDashArrayNV,
-  glPathFogGenNV,
-  glPathGlyphIndexArrayNV,
-  glPathGlyphIndexRangeNV,
-  glPathGlyphRangeNV
+  glPathFogGenNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,54 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glNamedBufferSubData --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferSubData.xhtml OpenGL 4.x>.
+glNamedBufferSubData
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
+  -> m ()
+glNamedBufferSubData v1 v2 v3 v4 = liftIO $ dyn362 ptr_glNamedBufferSubData v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferSubData #-}
+ptr_glNamedBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+ptr_glNamedBufferSubData = unsafePerformIO $ getCommand "glNamedBufferSubData"
+
+-- glNamedBufferSubDataEXT -----------------------------------------------------
+
+-- | This command is an alias for 'glNamedBufferSubData'.
+glNamedBufferSubDataEXT
+  :: MonadIO m
+  => GLuint -- ^ @buffer@.
+  -> GLintptr -- ^ @offset@.
+  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
+  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
+  -> m ()
+glNamedBufferSubDataEXT v1 v2 v3 v4 = liftIO $ dyn362 ptr_glNamedBufferSubDataEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glNamedBufferSubDataEXT #-}
+ptr_glNamedBufferSubDataEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
+ptr_glNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedBufferSubDataEXT"
+
+-- glNamedCopyBufferSubDataEXT -------------------------------------------------
+
+glNamedCopyBufferSubDataEXT
+  :: MonadIO m
+  => GLuint -- ^ @readBuffer@.
+  -> GLuint -- ^ @writeBuffer@.
+  -> GLintptr -- ^ @readOffset@.
+  -> GLintptr -- ^ @writeOffset@.
+  -> GLsizeiptr -- ^ @size@.
+  -> m ()
+glNamedCopyBufferSubDataEXT v1 v2 v3 v4 v5 = liftIO $ dyn174 ptr_glNamedCopyBufferSubDataEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glNamedCopyBufferSubDataEXT #-}
+ptr_glNamedCopyBufferSubDataEXT :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
+ptr_glNamedCopyBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedCopyBufferSubDataEXT"
+
 -- glNamedFramebufferDrawBuffer ------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffer.xhtml OpenGL 4.x>.
@@ -1565,60 +1613,4 @@
 {-# NOINLINE ptr_glPathFogGenNV #-}
 ptr_glPathFogGenNV :: FunPtr (GLenum -> IO ())
 ptr_glPathFogGenNV = unsafePerformIO $ getCommand "glPathFogGenNV"
-
--- glPathGlyphIndexArrayNV -----------------------------------------------------
-
-glPathGlyphIndexArrayNV
-  :: MonadIO m
-  => GLuint -- ^ @firstPathName@.
-  -> GLenum -- ^ @fontTarget@.
-  -> Ptr a -- ^ @fontName@.
-  -> GLbitfield -- ^ @fontStyle@.
-  -> GLuint -- ^ @firstGlyphIndex@.
-  -> GLsizei -- ^ @numGlyphs@.
-  -> GLuint -- ^ @pathParameterTemplate@.
-  -> GLfloat -- ^ @emScale@.
-  -> m GLenum
-glPathGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn599 ptr_glPathGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8
-
-{-# NOINLINE ptr_glPathGlyphIndexArrayNV #-}
-ptr_glPathGlyphIndexArrayNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
-ptr_glPathGlyphIndexArrayNV = unsafePerformIO $ getCommand "glPathGlyphIndexArrayNV"
-
--- glPathGlyphIndexRangeNV -----------------------------------------------------
-
-glPathGlyphIndexRangeNV
-  :: MonadIO m
-  => GLenum -- ^ @fontTarget@.
-  -> Ptr a -- ^ @fontName@.
-  -> GLbitfield -- ^ @fontStyle@.
-  -> GLuint -- ^ @pathParameterTemplate@.
-  -> GLfloat -- ^ @emScale@.
-  -> Ptr GLuint -- ^ @baseAndCount@.
-  -> m GLenum
-glPathGlyphIndexRangeNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn600 ptr_glPathGlyphIndexRangeNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glPathGlyphIndexRangeNV #-}
-ptr_glPathGlyphIndexRangeNV :: FunPtr (GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum)
-ptr_glPathGlyphIndexRangeNV = unsafePerformIO $ getCommand "glPathGlyphIndexRangeNV"
-
--- glPathGlyphRangeNV ----------------------------------------------------------
-
-glPathGlyphRangeNV
-  :: MonadIO m
-  => GLuint -- ^ @firstPathName@ of type @Path@.
-  -> GLenum -- ^ @fontTarget@ of type @PathFontTarget@.
-  -> Ptr a -- ^ @fontName@ pointing to @COMPSIZE(fontTarget,fontName)@ elements of type @a@.
-  -> GLbitfield -- ^ @fontStyle@ of type @PathFontStyle@.
-  -> GLuint -- ^ @firstGlyph@.
-  -> GLsizei -- ^ @numGlyphs@.
-  -> GLenum -- ^ @handleMissingGlyphs@ of type @PathHandleMissingGlyphs@.
-  -> GLuint -- ^ @pathParameterTemplate@ of type @Path@.
-  -> GLfloat -- ^ @emScale@.
-  -> m ()
-glPathGlyphRangeNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn601 ptr_glPathGlyphRangeNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glPathGlyphRangeNV #-}
-ptr_glPathGlyphRangeNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
-ptr_glPathGlyphRangeNV = unsafePerformIO $ getCommand "glPathGlyphRangeNV"
 
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,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F19 (
+  glPathGlyphIndexArrayNV,
+  glPathGlyphIndexRangeNV,
+  glPathGlyphRangeNV,
   glPathGlyphsNV,
   glPathMemoryGlyphIndexArrayNV,
   glPathParameterfNV,
@@ -111,10 +114,7 @@
   glProgramEnvParameter4fARB,
   glProgramEnvParameter4fvARB,
   glProgramEnvParameterI4iNV,
-  glProgramEnvParameterI4ivNV,
-  glProgramEnvParameterI4uiNV,
-  glProgramEnvParameterI4uivNV,
-  glProgramEnvParameters4fvEXT
+  glProgramEnvParameterI4ivNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,62 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glPathGlyphIndexArrayNV -----------------------------------------------------
+
+glPathGlyphIndexArrayNV
+  :: MonadIO m
+  => GLuint -- ^ @firstPathName@.
+  -> GLenum -- ^ @fontTarget@.
+  -> Ptr a -- ^ @fontName@.
+  -> GLbitfield -- ^ @fontStyle@.
+  -> GLuint -- ^ @firstGlyphIndex@.
+  -> GLsizei -- ^ @numGlyphs@.
+  -> GLuint -- ^ @pathParameterTemplate@.
+  -> GLfloat -- ^ @emScale@.
+  -> m GLenum
+glPathGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8 = liftIO $ dyn599 ptr_glPathGlyphIndexArrayNV v1 v2 v3 v4 v5 v6 v7 v8
+
+{-# NOINLINE ptr_glPathGlyphIndexArrayNV #-}
+ptr_glPathGlyphIndexArrayNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
+ptr_glPathGlyphIndexArrayNV = unsafePerformIO $ getCommand "glPathGlyphIndexArrayNV"
+
+-- glPathGlyphIndexRangeNV -----------------------------------------------------
+
+glPathGlyphIndexRangeNV
+  :: MonadIO m
+  => GLenum -- ^ @fontTarget@.
+  -> Ptr a -- ^ @fontName@.
+  -> GLbitfield -- ^ @fontStyle@.
+  -> GLuint -- ^ @pathParameterTemplate@.
+  -> GLfloat -- ^ @emScale@.
+  -> Ptr GLuint -- ^ @baseAndCount@.
+  -> m GLenum
+glPathGlyphIndexRangeNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn600 ptr_glPathGlyphIndexRangeNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glPathGlyphIndexRangeNV #-}
+ptr_glPathGlyphIndexRangeNV :: FunPtr (GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum)
+ptr_glPathGlyphIndexRangeNV = unsafePerformIO $ getCommand "glPathGlyphIndexRangeNV"
+
+-- glPathGlyphRangeNV ----------------------------------------------------------
+
+glPathGlyphRangeNV
+  :: MonadIO m
+  => GLuint -- ^ @firstPathName@ of type @Path@.
+  -> GLenum -- ^ @fontTarget@ of type @PathFontTarget@.
+  -> Ptr a -- ^ @fontName@ pointing to @COMPSIZE(fontTarget,fontName)@ elements of type @a@.
+  -> GLbitfield -- ^ @fontStyle@ of type @PathFontStyle@.
+  -> GLuint -- ^ @firstGlyph@.
+  -> GLsizei -- ^ @numGlyphs@.
+  -> GLenum -- ^ @handleMissingGlyphs@ of type @PathHandleMissingGlyphs@.
+  -> GLuint -- ^ @pathParameterTemplate@ of type @Path@.
+  -> GLfloat -- ^ @emScale@.
+  -> m ()
+glPathGlyphRangeNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn601 ptr_glPathGlyphRangeNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glPathGlyphRangeNV #-}
+ptr_glPathGlyphRangeNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
+ptr_glPathGlyphRangeNV = unsafePerformIO $ getCommand "glPathGlyphRangeNV"
+
 -- glPathGlyphsNV --------------------------------------------------------------
 
 glPathGlyphsNV
@@ -1523,51 +1579,4 @@
 {-# NOINLINE ptr_glProgramEnvParameterI4ivNV #-}
 ptr_glProgramEnvParameterI4ivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
 ptr_glProgramEnvParameterI4ivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4ivNV"
-
--- glProgramEnvParameterI4uiNV -------------------------------------------------
-
--- | The vector equivalent of this command is 'glProgramEnvParameterI4uivNV'.
-glProgramEnvParameterI4uiNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> GLuint -- ^ @y@.
-  -> GLuint -- ^ @z@.
-  -> GLuint -- ^ @w@.
-  -> m ()
-glProgramEnvParameterI4uiNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn6 ptr_glProgramEnvParameterI4uiNV v1 v2 v3 v4 v5 v6
-
-{-# NOINLINE ptr_glProgramEnvParameterI4uiNV #-}
-ptr_glProgramEnvParameterI4uiNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glProgramEnvParameterI4uiNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uiNV"
-
--- glProgramEnvParameterI4uivNV ------------------------------------------------
-
-glProgramEnvParameterI4uivNV
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTarget@.
-  -> GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
-  -> m ()
-glProgramEnvParameterI4uivNV v1 v2 v3 = liftIO $ dyn214 ptr_glProgramEnvParameterI4uivNV v1 v2 v3
-
-{-# NOINLINE ptr_glProgramEnvParameterI4uivNV #-}
-ptr_glProgramEnvParameterI4uivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
-ptr_glProgramEnvParameterI4uivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uivNV"
-
--- glProgramEnvParameters4fvEXT ------------------------------------------------
-
-glProgramEnvParameters4fvEXT
-  :: MonadIO m
-  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
-  -> GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
-  -> m ()
-glProgramEnvParameters4fvEXT v1 v2 v3 v4 = liftIO $ dyn284 ptr_glProgramEnvParameters4fvEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramEnvParameters4fvEXT #-}
-ptr_glProgramEnvParameters4fvEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glProgramEnvParameters4fvEXT = unsafePerformIO $ getCommand "glProgramEnvParameters4fvEXT"
 
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,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F20 (
+  glProgramEnvParameterI4uiNV,
+  glProgramEnvParameterI4uivNV,
+  glProgramEnvParameters4fvEXT,
   glProgramEnvParametersI4ivNV,
   glProgramEnvParametersI4uivNV,
   glProgramLocalParameter4dARB,
@@ -111,10 +114,7 @@
   glProgramUniform3ui,
   glProgramUniform3ui64ARB,
   glProgramUniform3ui64NV,
-  glProgramUniform3ui64vARB,
-  glProgramUniform3ui64vNV,
-  glProgramUniform3uiEXT,
-  glProgramUniform3uiv
+  glProgramUniform3ui64vARB
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,53 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glProgramEnvParameterI4uiNV -------------------------------------------------
+
+-- | The vector equivalent of this command is 'glProgramEnvParameterI4uivNV'.
+glProgramEnvParameterI4uiNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> GLuint -- ^ @y@.
+  -> GLuint -- ^ @z@.
+  -> GLuint -- ^ @w@.
+  -> m ()
+glProgramEnvParameterI4uiNV v1 v2 v3 v4 v5 v6 = liftIO $ dyn6 ptr_glProgramEnvParameterI4uiNV v1 v2 v3 v4 v5 v6
+
+{-# NOINLINE ptr_glProgramEnvParameterI4uiNV #-}
+ptr_glProgramEnvParameterI4uiNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glProgramEnvParameterI4uiNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uiNV"
+
+-- glProgramEnvParameterI4uivNV ------------------------------------------------
+
+glProgramEnvParameterI4uivNV
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTarget@.
+  -> GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
+  -> m ()
+glProgramEnvParameterI4uivNV v1 v2 v3 = liftIO $ dyn214 ptr_glProgramEnvParameterI4uivNV v1 v2 v3
+
+{-# NOINLINE ptr_glProgramEnvParameterI4uivNV #-}
+ptr_glProgramEnvParameterI4uivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
+ptr_glProgramEnvParameterI4uivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uivNV"
+
+-- glProgramEnvParameters4fvEXT ------------------------------------------------
+
+glProgramEnvParameters4fvEXT
+  :: MonadIO m
+  => GLenum -- ^ @target@ of type @ProgramTargetARB@.
+  -> GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
+  -> m ()
+glProgramEnvParameters4fvEXT v1 v2 v3 v4 = liftIO $ dyn284 ptr_glProgramEnvParameters4fvEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramEnvParameters4fvEXT #-}
+ptr_glProgramEnvParameters4fvEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glProgramEnvParameters4fvEXT = unsafePerformIO $ getCommand "glProgramEnvParameters4fvEXT"
+
 -- glProgramEnvParametersI4ivNV ------------------------------------------------
 
 glProgramEnvParametersI4ivNV
@@ -1629,52 +1676,4 @@
 {-# NOINLINE ptr_glProgramUniform3ui64vARB #-}
 ptr_glProgramUniform3ui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
 ptr_glProgramUniform3ui64vARB = unsafePerformIO $ getCommand "glProgramUniform3ui64vARB"
-
--- glProgramUniform3ui64vNV ----------------------------------------------------
-
-glProgramUniform3ui64vNV
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLuint64EXT@.
-  -> m ()
-glProgramUniform3ui64vNV v1 v2 v3 v4 = liftIO $ dyn640 ptr_glProgramUniform3ui64vNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3ui64vNV #-}
-ptr_glProgramUniform3ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
-ptr_glProgramUniform3ui64vNV = unsafePerformIO $ getCommand "glProgramUniform3ui64vNV"
-
--- glProgramUniform3uiEXT ------------------------------------------------------
-
--- | This command is an alias for 'glProgramUniform3ui'.
-glProgramUniform3uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLuint -- ^ @v0@.
-  -> GLuint -- ^ @v1@.
-  -> GLuint -- ^ @v2@.
-  -> m ()
-glProgramUniform3uiEXT v1 v2 v3 v4 v5 = liftIO $ dyn654 ptr_glProgramUniform3uiEXT v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glProgramUniform3uiEXT #-}
-ptr_glProgramUniform3uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
-ptr_glProgramUniform3uiEXT = unsafePerformIO $ getCommand "glProgramUniform3uiEXT"
-
--- glProgramUniform3uiv --------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
-glProgramUniform3uiv
-  :: MonadIO m
-  => GLuint -- ^ @program@.
-  -> GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLuint -- ^ @value@ pointing to @3@ elements of type @GLuint@.
-  -> m ()
-glProgramUniform3uiv v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform3uiv v1 v2 v3 v4
-
-{-# NOINLINE ptr_glProgramUniform3uiv #-}
-ptr_glProgramUniform3uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
-ptr_glProgramUniform3uiv = unsafePerformIO $ getCommand "glProgramUniform3uiv"
 
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,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F21 (
+  glProgramUniform3ui64vNV,
+  glProgramUniform3uiEXT,
+  glProgramUniform3uiv,
   glProgramUniform3uivEXT,
   glProgramUniform4d,
   glProgramUniform4dEXT,
@@ -111,10 +114,7 @@
   glRasterPos3dv,
   glRasterPos3f,
   glRasterPos3fv,
-  glRasterPos3i,
-  glRasterPos3iv,
-  glRasterPos3s,
-  glRasterPos3sv
+  glRasterPos3i
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,54 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glProgramUniform3ui64vNV ----------------------------------------------------
+
+glProgramUniform3ui64vNV
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLuint64EXT@.
+  -> m ()
+glProgramUniform3ui64vNV v1 v2 v3 v4 = liftIO $ dyn640 ptr_glProgramUniform3ui64vNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3ui64vNV #-}
+ptr_glProgramUniform3ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
+ptr_glProgramUniform3ui64vNV = unsafePerformIO $ getCommand "glProgramUniform3ui64vNV"
+
+-- glProgramUniform3uiEXT ------------------------------------------------------
+
+-- | This command is an alias for 'glProgramUniform3ui'.
+glProgramUniform3uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLuint -- ^ @v0@.
+  -> GLuint -- ^ @v1@.
+  -> GLuint -- ^ @v2@.
+  -> m ()
+glProgramUniform3uiEXT v1 v2 v3 v4 v5 = liftIO $ dyn654 ptr_glProgramUniform3uiEXT v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glProgramUniform3uiEXT #-}
+ptr_glProgramUniform3uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
+ptr_glProgramUniform3uiEXT = unsafePerformIO $ getCommand "glProgramUniform3uiEXT"
+
+-- glProgramUniform3uiv --------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>.
+glProgramUniform3uiv
+  :: MonadIO m
+  => GLuint -- ^ @program@.
+  -> GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLuint -- ^ @value@ pointing to @3@ elements of type @GLuint@.
+  -> m ()
+glProgramUniform3uiv v1 v2 v3 v4 = liftIO $ dyn461 ptr_glProgramUniform3uiv v1 v2 v3 v4
+
+{-# NOINLINE ptr_glProgramUniform3uiv #-}
+ptr_glProgramUniform3uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
+ptr_glProgramUniform3uiv = unsafePerformIO $ getCommand "glProgramUniform3uiv"
+
 -- glProgramUniform3uivEXT -----------------------------------------------------
 
 -- | This command is an alias for 'glProgramUniform3uiv'.
@@ -1622,45 +1670,4 @@
 {-# NOINLINE ptr_glRasterPos3i #-}
 ptr_glRasterPos3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
 ptr_glRasterPos3i = unsafePerformIO $ getCommand "glRasterPos3i"
-
--- glRasterPos3iv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos3iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
-  -> m ()
-glRasterPos3iv v1 = liftIO $ dyn43 ptr_glRasterPos3iv v1
-
-{-# NOINLINE ptr_glRasterPos3iv #-}
-ptr_glRasterPos3iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glRasterPos3iv = unsafePerformIO $ getCommand "glRasterPos3iv"
-
--- glRasterPos3s ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3sv'.
-glRasterPos3s
-  :: MonadIO m
-  => GLshort -- ^ @x@ of type @CoordS@.
-  -> GLshort -- ^ @y@ of type @CoordS@.
-  -> GLshort -- ^ @z@ of type @CoordS@.
-  -> m ()
-glRasterPos3s v1 v2 v3 = liftIO $ dyn44 ptr_glRasterPos3s v1 v2 v3
-
-{-# NOINLINE ptr_glRasterPos3s #-}
-ptr_glRasterPos3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
-ptr_glRasterPos3s = unsafePerformIO $ getCommand "glRasterPos3s"
-
--- glRasterPos3sv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
-glRasterPos3sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
-  -> m ()
-glRasterPos3sv v1 = liftIO $ dyn45 ptr_glRasterPos3sv v1
-
-{-# NOINLINE ptr_glRasterPos3sv #-}
-ptr_glRasterPos3sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glRasterPos3sv = unsafePerformIO $ getCommand "glRasterPos3sv"
 
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,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F22 (
+  glRasterPos3iv,
+  glRasterPos3s,
+  glRasterPos3sv,
   glRasterPos3xOES,
   glRasterPos3xvOES,
   glRasterPos4d,
@@ -111,10 +114,7 @@
   glSamplerParameterIiv,
   glSamplerParameterIivEXT,
   glSamplerParameterIivOES,
-  glSamplerParameterIuiv,
-  glSamplerParameterIuivEXT,
-  glSamplerParameterIuivOES,
-  glSamplerParameterf
+  glSamplerParameterIuiv
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,47 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glRasterPos3iv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos3iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
+  -> m ()
+glRasterPos3iv v1 = liftIO $ dyn43 ptr_glRasterPos3iv v1
+
+{-# NOINLINE ptr_glRasterPos3iv #-}
+ptr_glRasterPos3iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glRasterPos3iv = unsafePerformIO $ getCommand "glRasterPos3iv"
+
+-- glRasterPos3s ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glRasterPos3sv'.
+glRasterPos3s
+  :: MonadIO m
+  => GLshort -- ^ @x@ of type @CoordS@.
+  -> GLshort -- ^ @y@ of type @CoordS@.
+  -> GLshort -- ^ @z@ of type @CoordS@.
+  -> m ()
+glRasterPos3s v1 v2 v3 = liftIO $ dyn44 ptr_glRasterPos3s v1 v2 v3
+
+{-# NOINLINE ptr_glRasterPos3s #-}
+ptr_glRasterPos3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
+ptr_glRasterPos3s = unsafePerformIO $ getCommand "glRasterPos3s"
+
+-- glRasterPos3sv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>.
+glRasterPos3sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
+  -> m ()
+glRasterPos3sv v1 = liftIO $ dyn45 ptr_glRasterPos3sv v1
+
+{-# NOINLINE ptr_glRasterPos3sv #-}
+ptr_glRasterPos3sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glRasterPos3sv = unsafePerformIO $ getCommand "glRasterPos3sv"
+
 -- glRasterPos3xOES ------------------------------------------------------------
 
 glRasterPos3xOES
@@ -1546,49 +1587,4 @@
 {-# NOINLINE ptr_glSamplerParameterIuiv #-}
 ptr_glSamplerParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
 ptr_glSamplerParameterIuiv = unsafePerformIO $ getCommand "glSamplerParameterIuiv"
-
--- glSamplerParameterIuivEXT ---------------------------------------------------
-
--- | This command is an alias for 'glSamplerParameterIuiv'.
-glSamplerParameterIuivEXT
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glSamplerParameterIuivEXT v1 v2 v3 = liftIO $ dyn375 ptr_glSamplerParameterIuivEXT v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterIuivEXT #-}
-ptr_glSamplerParameterIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
-ptr_glSamplerParameterIuivEXT = unsafePerformIO $ getCommand "glSamplerParameterIuivEXT"
-
--- glSamplerParameterIuivOES ---------------------------------------------------
-
--- | This command is an alias for 'glSamplerParameterIuiv'.
-glSamplerParameterIuivOES
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
-  -> m ()
-glSamplerParameterIuivOES v1 v2 v3 = liftIO $ dyn375 ptr_glSamplerParameterIuivOES v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterIuivOES #-}
-ptr_glSamplerParameterIuivOES :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
-ptr_glSamplerParameterIuivOES = unsafePerformIO $ getCommand "glSamplerParameterIuivOES"
-
--- glSamplerParameterf ---------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
-glSamplerParameterf
-  :: MonadIO m
-  => GLuint -- ^ @sampler@.
-  -> GLenum -- ^ @pname@.
-  -> GLfloat -- ^ @param@.
-  -> m ()
-glSamplerParameterf v1 v2 v3 = liftIO $ dyn487 ptr_glSamplerParameterf v1 v2 v3
-
-{-# NOINLINE ptr_glSamplerParameterf #-}
-ptr_glSamplerParameterf :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
-ptr_glSamplerParameterf = unsafePerformIO $ getCommand "glSamplerParameterf"
 
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,9 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F23 (
+  glSamplerParameterIuivEXT,
+  glSamplerParameterIuivOES,
+  glSamplerParameterf,
   glSamplerParameterfv,
   glSamplerParameteri,
   glSamplerParameteriv,
@@ -25,10 +28,13 @@
   glScissor,
   glScissorArrayv,
   glScissorArrayvNV,
+  glScissorArrayvOES,
   glScissorIndexed,
   glScissorIndexedNV,
+  glScissorIndexedOES,
   glScissorIndexedv,
   glScissorIndexedvNV,
+  glScissorIndexedvOES,
   glSecondaryColor3b,
   glSecondaryColor3bEXT,
   glSecondaryColor3bv,
@@ -108,13 +114,7 @@
   glStencilOpSeparateATI,
   glStencilOpValueAMD,
   glStencilStrokePathInstancedNV,
-  glStencilStrokePathNV,
-  glStencilThenCoverFillPathInstancedNV,
-  glStencilThenCoverFillPathNV,
-  glStencilThenCoverStrokePathInstancedNV,
-  glStencilThenCoverStrokePathNV,
-  glStopInstrumentsSGIX,
-  glStringMarkerGREMEDY
+  glStencilStrokePathNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,51 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glSamplerParameterIuivEXT ---------------------------------------------------
+
+-- | This command is an alias for 'glSamplerParameterIuiv'.
+glSamplerParameterIuivEXT
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glSamplerParameterIuivEXT v1 v2 v3 = liftIO $ dyn375 ptr_glSamplerParameterIuivEXT v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterIuivEXT #-}
+ptr_glSamplerParameterIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
+ptr_glSamplerParameterIuivEXT = unsafePerformIO $ getCommand "glSamplerParameterIuivEXT"
+
+-- glSamplerParameterIuivOES ---------------------------------------------------
+
+-- | This command is an alias for 'glSamplerParameterIuiv'.
+glSamplerParameterIuivOES
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
+  -> m ()
+glSamplerParameterIuivOES v1 v2 v3 = liftIO $ dyn375 ptr_glSamplerParameterIuivOES v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterIuivOES #-}
+ptr_glSamplerParameterIuivOES :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
+ptr_glSamplerParameterIuivOES = unsafePerformIO $ getCommand "glSamplerParameterIuivOES"
+
+-- glSamplerParameterf ---------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
+glSamplerParameterf
+  :: MonadIO m
+  => GLuint -- ^ @sampler@.
+  -> GLenum -- ^ @pname@.
+  -> GLfloat -- ^ @param@.
+  -> m ()
+glSamplerParameterf v1 v2 v3 = liftIO $ dyn487 ptr_glSamplerParameterf v1 v2 v3
+
+{-# NOINLINE ptr_glSamplerParameterf #-}
+ptr_glSamplerParameterf :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
+ptr_glSamplerParameterf = unsafePerformIO $ getCommand "glSamplerParameterf"
+
 -- glSamplerParameterfv --------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>.
@@ -272,6 +317,21 @@
 ptr_glScissorArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
 ptr_glScissorArrayvNV = unsafePerformIO $ getCommand "glScissorArrayvNV"
 
+-- glScissorArrayvOES ----------------------------------------------------------
+
+-- | This command is an alias for 'glScissorArrayv'.
+glScissorArrayvOES
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
+  -> m ()
+glScissorArrayvOES v1 v2 v3 = liftIO $ dyn699 ptr_glScissorArrayvOES v1 v2 v3
+
+{-# NOINLINE ptr_glScissorArrayvOES #-}
+ptr_glScissorArrayvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
+ptr_glScissorArrayvOES = unsafePerformIO $ getCommand "glScissorArrayvOES"
+
 -- glScissorIndexed ------------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorIndexed.xhtml OpenGL 4.x>.
@@ -306,6 +366,23 @@
 ptr_glScissorIndexedNV :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
 ptr_glScissorIndexedNV = unsafePerformIO $ getCommand "glScissorIndexedNV"
 
+-- glScissorIndexedOES ---------------------------------------------------------
+
+-- | This command is an alias for 'glScissorIndexed'.
+glScissorIndexedOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @left@.
+  -> GLint -- ^ @bottom@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> m ()
+glScissorIndexedOES v1 v2 v3 v4 v5 = liftIO $ dyn700 ptr_glScissorIndexedOES v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glScissorIndexedOES #-}
+ptr_glScissorIndexedOES :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
+ptr_glScissorIndexedOES = unsafePerformIO $ getCommand "glScissorIndexedOES"
+
 -- glScissorIndexedv -----------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorIndexed.xhtml OpenGL 4.x>.
@@ -334,6 +411,20 @@
 ptr_glScissorIndexedvNV :: FunPtr (GLuint -> Ptr GLint -> IO ())
 ptr_glScissorIndexedvNV = unsafePerformIO $ getCommand "glScissorIndexedvNV"
 
+-- glScissorIndexedvOES --------------------------------------------------------
+
+-- | This command is an alias for 'glScissorIndexedv'.
+glScissorIndexedvOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
+  -> m ()
+glScissorIndexedvOES v1 v2 = liftIO $ dyn701 ptr_glScissorIndexedvOES v1 v2
+
+{-# NOINLINE ptr_glScissorIndexedvOES #-}
+ptr_glScissorIndexedvOES :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glScissorIndexedvOES = unsafePerformIO $ getCommand "glScissorIndexedvOES"
+
 -- glSecondaryColor3b ----------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>. The vector equivalent of this command is 'glSecondaryColor3bv'.
@@ -1486,99 +1577,4 @@
 {-# NOINLINE ptr_glStencilStrokePathNV #-}
 ptr_glStencilStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
 ptr_glStencilStrokePathNV = unsafePerformIO $ getCommand "glStencilStrokePathNV"
-
--- glStencilThenCoverFillPathInstancedNV ---------------------------------------
-
-glStencilThenCoverFillPathInstancedNV
-  :: MonadIO m
-  => GLsizei -- ^ @numPaths@.
-  -> GLenum -- ^ @pathNameType@.
-  -> Ptr a -- ^ @paths@.
-  -> GLuint -- ^ @pathBase@.
-  -> GLenum -- ^ @fillMode@.
-  -> GLuint -- ^ @mask@.
-  -> GLenum -- ^ @coverMode@.
-  -> GLenum -- ^ @transformType@.
-  -> Ptr GLfloat -- ^ @transformValues@.
-  -> m ()
-glStencilThenCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn716 ptr_glStencilThenCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glStencilThenCoverFillPathInstancedNV #-}
-ptr_glStencilThenCoverFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glStencilThenCoverFillPathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathInstancedNV"
-
--- glStencilThenCoverFillPathNV ------------------------------------------------
-
-glStencilThenCoverFillPathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@.
-  -> GLenum -- ^ @fillMode@.
-  -> GLuint -- ^ @mask@.
-  -> GLenum -- ^ @coverMode@.
-  -> m ()
-glStencilThenCoverFillPathNV v1 v2 v3 v4 = liftIO $ dyn717 ptr_glStencilThenCoverFillPathNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glStencilThenCoverFillPathNV #-}
-ptr_glStencilThenCoverFillPathNV :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
-ptr_glStencilThenCoverFillPathNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathNV"
-
--- glStencilThenCoverStrokePathInstancedNV -------------------------------------
-
-glStencilThenCoverStrokePathInstancedNV
-  :: MonadIO m
-  => GLsizei -- ^ @numPaths@.
-  -> GLenum -- ^ @pathNameType@.
-  -> Ptr a -- ^ @paths@.
-  -> GLuint -- ^ @pathBase@.
-  -> GLint -- ^ @reference@.
-  -> GLuint -- ^ @mask@.
-  -> GLenum -- ^ @coverMode@.
-  -> GLenum -- ^ @transformType@.
-  -> Ptr GLfloat -- ^ @transformValues@.
-  -> m ()
-glStencilThenCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn718 ptr_glStencilThenCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glStencilThenCoverStrokePathInstancedNV #-}
-ptr_glStencilThenCoverStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
-ptr_glStencilThenCoverStrokePathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathInstancedNV"
-
--- glStencilThenCoverStrokePathNV ----------------------------------------------
-
-glStencilThenCoverStrokePathNV
-  :: MonadIO m
-  => GLuint -- ^ @path@.
-  -> GLint -- ^ @reference@.
-  -> GLuint -- ^ @mask@.
-  -> GLenum -- ^ @coverMode@.
-  -> m ()
-glStencilThenCoverStrokePathNV v1 v2 v3 v4 = liftIO $ dyn719 ptr_glStencilThenCoverStrokePathNV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glStencilThenCoverStrokePathNV #-}
-ptr_glStencilThenCoverStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
-ptr_glStencilThenCoverStrokePathNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathNV"
-
--- glStopInstrumentsSGIX -------------------------------------------------------
-
-glStopInstrumentsSGIX
-  :: MonadIO m
-  => GLint -- ^ @marker@.
-  -> m ()
-glStopInstrumentsSGIX v1 = liftIO $ dyn12 ptr_glStopInstrumentsSGIX v1
-
-{-# NOINLINE ptr_glStopInstrumentsSGIX #-}
-ptr_glStopInstrumentsSGIX :: FunPtr (GLint -> IO ())
-ptr_glStopInstrumentsSGIX = unsafePerformIO $ getCommand "glStopInstrumentsSGIX"
-
--- glStringMarkerGREMEDY -------------------------------------------------------
-
-glStringMarkerGREMEDY
-  :: MonadIO m
-  => GLsizei -- ^ @len@.
-  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
-  -> m ()
-glStringMarkerGREMEDY v1 v2 = liftIO $ dyn260 ptr_glStringMarkerGREMEDY v1 v2
-
-{-# NOINLINE ptr_glStringMarkerGREMEDY #-}
-ptr_glStringMarkerGREMEDY :: FunPtr (GLsizei -> Ptr a -> IO ())
-ptr_glStringMarkerGREMEDY = unsafePerformIO $ getCommand "glStringMarkerGREMEDY"
 
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,12 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F24 (
+  glStencilThenCoverFillPathInstancedNV,
+  glStencilThenCoverFillPathNV,
+  glStencilThenCoverStrokePathInstancedNV,
+  glStencilThenCoverStrokePathNV,
+  glStopInstrumentsSGIX,
+  glStringMarkerGREMEDY,
   glSubpixelPrecisionBiasNV,
   glSwizzleEXT,
   glSyncTextureINTEL,
@@ -108,13 +114,7 @@
   glTexCoord4fVertex4fvSUN,
   glTexCoord4fv,
   glTexCoord4hNV,
-  glTexCoord4hvNV,
-  glTexCoord4i,
-  glTexCoord4iv,
-  glTexCoord4s,
-  glTexCoord4sv,
-  glTexCoord4xOES,
-  glTexCoord4xvOES
+  glTexCoord4hvNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,101 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glStencilThenCoverFillPathInstancedNV ---------------------------------------
+
+glStencilThenCoverFillPathInstancedNV
+  :: MonadIO m
+  => GLsizei -- ^ @numPaths@.
+  -> GLenum -- ^ @pathNameType@.
+  -> Ptr a -- ^ @paths@.
+  -> GLuint -- ^ @pathBase@.
+  -> GLenum -- ^ @fillMode@.
+  -> GLuint -- ^ @mask@.
+  -> GLenum -- ^ @coverMode@.
+  -> GLenum -- ^ @transformType@.
+  -> Ptr GLfloat -- ^ @transformValues@.
+  -> m ()
+glStencilThenCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn716 ptr_glStencilThenCoverFillPathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glStencilThenCoverFillPathInstancedNV #-}
+ptr_glStencilThenCoverFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glStencilThenCoverFillPathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathInstancedNV"
+
+-- glStencilThenCoverFillPathNV ------------------------------------------------
+
+glStencilThenCoverFillPathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@.
+  -> GLenum -- ^ @fillMode@.
+  -> GLuint -- ^ @mask@.
+  -> GLenum -- ^ @coverMode@.
+  -> m ()
+glStencilThenCoverFillPathNV v1 v2 v3 v4 = liftIO $ dyn717 ptr_glStencilThenCoverFillPathNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glStencilThenCoverFillPathNV #-}
+ptr_glStencilThenCoverFillPathNV :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
+ptr_glStencilThenCoverFillPathNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathNV"
+
+-- glStencilThenCoverStrokePathInstancedNV -------------------------------------
+
+glStencilThenCoverStrokePathInstancedNV
+  :: MonadIO m
+  => GLsizei -- ^ @numPaths@.
+  -> GLenum -- ^ @pathNameType@.
+  -> Ptr a -- ^ @paths@.
+  -> GLuint -- ^ @pathBase@.
+  -> GLint -- ^ @reference@.
+  -> GLuint -- ^ @mask@.
+  -> GLenum -- ^ @coverMode@.
+  -> GLenum -- ^ @transformType@.
+  -> Ptr GLfloat -- ^ @transformValues@.
+  -> m ()
+glStencilThenCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn718 ptr_glStencilThenCoverStrokePathInstancedNV v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glStencilThenCoverStrokePathInstancedNV #-}
+ptr_glStencilThenCoverStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
+ptr_glStencilThenCoverStrokePathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathInstancedNV"
+
+-- glStencilThenCoverStrokePathNV ----------------------------------------------
+
+glStencilThenCoverStrokePathNV
+  :: MonadIO m
+  => GLuint -- ^ @path@.
+  -> GLint -- ^ @reference@.
+  -> GLuint -- ^ @mask@.
+  -> GLenum -- ^ @coverMode@.
+  -> m ()
+glStencilThenCoverStrokePathNV v1 v2 v3 v4 = liftIO $ dyn719 ptr_glStencilThenCoverStrokePathNV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glStencilThenCoverStrokePathNV #-}
+ptr_glStencilThenCoverStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
+ptr_glStencilThenCoverStrokePathNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathNV"
+
+-- glStopInstrumentsSGIX -------------------------------------------------------
+
+glStopInstrumentsSGIX
+  :: MonadIO m
+  => GLint -- ^ @marker@.
+  -> m ()
+glStopInstrumentsSGIX v1 = liftIO $ dyn12 ptr_glStopInstrumentsSGIX v1
+
+{-# NOINLINE ptr_glStopInstrumentsSGIX #-}
+ptr_glStopInstrumentsSGIX :: FunPtr (GLint -> IO ())
+ptr_glStopInstrumentsSGIX = unsafePerformIO $ getCommand "glStopInstrumentsSGIX"
+
+-- glStringMarkerGREMEDY -------------------------------------------------------
+
+glStringMarkerGREMEDY
+  :: MonadIO m
+  => GLsizei -- ^ @len@.
+  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
+  -> m ()
+glStringMarkerGREMEDY v1 v2 = liftIO $ dyn260 ptr_glStringMarkerGREMEDY v1 v2
+
+{-# NOINLINE ptr_glStringMarkerGREMEDY #-}
+ptr_glStringMarkerGREMEDY :: FunPtr (GLsizei -> Ptr a -> IO ())
+ptr_glStringMarkerGREMEDY = unsafePerformIO $ getCommand "glStringMarkerGREMEDY"
+
 -- glSubpixelPrecisionBiasNV ---------------------------------------------------
 
 glSubpixelPrecisionBiasNV
@@ -1439,89 +1534,4 @@
 {-# NOINLINE ptr_glTexCoord4hvNV #-}
 ptr_glTexCoord4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
 ptr_glTexCoord4hvNV = unsafePerformIO $ getCommand "glTexCoord4hvNV"
-
--- glTexCoord4i ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4iv'.
-glTexCoord4i
-  :: MonadIO m
-  => GLint -- ^ @s@ of type @CoordI@.
-  -> GLint -- ^ @t@ of type @CoordI@.
-  -> GLint -- ^ @r@ of type @CoordI@.
-  -> GLint -- ^ @q@ of type @CoordI@.
-  -> m ()
-glTexCoord4i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glTexCoord4i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4i #-}
-ptr_glTexCoord4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glTexCoord4i = unsafePerformIO $ getCommand "glTexCoord4i"
-
--- glTexCoord4iv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord4iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
-  -> m ()
-glTexCoord4iv v1 = liftIO $ dyn43 ptr_glTexCoord4iv v1
-
-{-# NOINLINE ptr_glTexCoord4iv #-}
-ptr_glTexCoord4iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glTexCoord4iv = unsafePerformIO $ getCommand "glTexCoord4iv"
-
--- glTexCoord4s ----------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4sv'.
-glTexCoord4s
-  :: MonadIO m
-  => GLshort -- ^ @s@ of type @CoordS@.
-  -> GLshort -- ^ @t@ of type @CoordS@.
-  -> GLshort -- ^ @r@ of type @CoordS@.
-  -> GLshort -- ^ @q@ of type @CoordS@.
-  -> m ()
-glTexCoord4s v1 v2 v3 v4 = liftIO $ dyn113 ptr_glTexCoord4s v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4s #-}
-ptr_glTexCoord4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-ptr_glTexCoord4s = unsafePerformIO $ getCommand "glTexCoord4s"
-
--- glTexCoord4sv ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
-glTexCoord4sv
-  :: MonadIO m
-  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
-  -> m ()
-glTexCoord4sv v1 = liftIO $ dyn45 ptr_glTexCoord4sv v1
-
-{-# NOINLINE ptr_glTexCoord4sv #-}
-ptr_glTexCoord4sv :: FunPtr (Ptr GLshort -> IO ())
-ptr_glTexCoord4sv = unsafePerformIO $ getCommand "glTexCoord4sv"
-
--- glTexCoord4xOES -------------------------------------------------------------
-
-glTexCoord4xOES
-  :: MonadIO m
-  => GLfixed -- ^ @s@.
-  -> GLfixed -- ^ @t@.
-  -> GLfixed -- ^ @r@.
-  -> GLfixed -- ^ @q@.
-  -> m ()
-glTexCoord4xOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glTexCoord4xOES v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTexCoord4xOES #-}
-ptr_glTexCoord4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
-ptr_glTexCoord4xOES = unsafePerformIO $ getCommand "glTexCoord4xOES"
-
--- glTexCoord4xvOES ------------------------------------------------------------
-
-glTexCoord4xvOES
-  :: MonadIO m
-  => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
-  -> m ()
-glTexCoord4xvOES v1 = liftIO $ dyn107 ptr_glTexCoord4xvOES v1
-
-{-# NOINLINE ptr_glTexCoord4xvOES #-}
-ptr_glTexCoord4xvOES :: FunPtr (Ptr GLfixed -> IO ())
-ptr_glTexCoord4xvOES = unsafePerformIO $ getCommand "glTexCoord4xvOES"
 
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,12 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F25 (
+  glTexCoord4i,
+  glTexCoord4iv,
+  glTexCoord4s,
+  glTexCoord4sv,
+  glTexCoord4xOES,
+  glTexCoord4xvOES,
   glTexCoordFormatNV,
   glTexCoordP1ui,
   glTexCoordP1uiv,
@@ -108,13 +114,7 @@
   glTextureImage3DEXT,
   glTextureImage3DMultisampleCoverageNV,
   glTextureImage3DMultisampleNV,
-  glTextureLightEXT,
-  glTextureMaterialEXT,
-  glTextureNormalEXT,
-  glTexturePageCommitmentEXT,
-  glTextureParameterIiv,
-  glTextureParameterIivEXT,
-  glTextureParameterIuiv
+  glTextureLightEXT
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,91 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glTexCoord4i ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4iv'.
+glTexCoord4i
+  :: MonadIO m
+  => GLint -- ^ @s@ of type @CoordI@.
+  -> GLint -- ^ @t@ of type @CoordI@.
+  -> GLint -- ^ @r@ of type @CoordI@.
+  -> GLint -- ^ @q@ of type @CoordI@.
+  -> m ()
+glTexCoord4i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glTexCoord4i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4i #-}
+ptr_glTexCoord4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glTexCoord4i = unsafePerformIO $ getCommand "glTexCoord4i"
+
+-- glTexCoord4iv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord4iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
+  -> m ()
+glTexCoord4iv v1 = liftIO $ dyn43 ptr_glTexCoord4iv v1
+
+{-# NOINLINE ptr_glTexCoord4iv #-}
+ptr_glTexCoord4iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glTexCoord4iv = unsafePerformIO $ getCommand "glTexCoord4iv"
+
+-- glTexCoord4s ----------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4sv'.
+glTexCoord4s
+  :: MonadIO m
+  => GLshort -- ^ @s@ of type @CoordS@.
+  -> GLshort -- ^ @t@ of type @CoordS@.
+  -> GLshort -- ^ @r@ of type @CoordS@.
+  -> GLshort -- ^ @q@ of type @CoordS@.
+  -> m ()
+glTexCoord4s v1 v2 v3 v4 = liftIO $ dyn113 ptr_glTexCoord4s v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4s #-}
+ptr_glTexCoord4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
+ptr_glTexCoord4s = unsafePerformIO $ getCommand "glTexCoord4s"
+
+-- glTexCoord4sv ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
+glTexCoord4sv
+  :: MonadIO m
+  => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
+  -> m ()
+glTexCoord4sv v1 = liftIO $ dyn45 ptr_glTexCoord4sv v1
+
+{-# NOINLINE ptr_glTexCoord4sv #-}
+ptr_glTexCoord4sv :: FunPtr (Ptr GLshort -> IO ())
+ptr_glTexCoord4sv = unsafePerformIO $ getCommand "glTexCoord4sv"
+
+-- glTexCoord4xOES -------------------------------------------------------------
+
+glTexCoord4xOES
+  :: MonadIO m
+  => GLfixed -- ^ @s@.
+  -> GLfixed -- ^ @t@.
+  -> GLfixed -- ^ @r@.
+  -> GLfixed -- ^ @q@.
+  -> m ()
+glTexCoord4xOES v1 v2 v3 v4 = liftIO $ dyn50 ptr_glTexCoord4xOES v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTexCoord4xOES #-}
+ptr_glTexCoord4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
+ptr_glTexCoord4xOES = unsafePerformIO $ getCommand "glTexCoord4xOES"
+
+-- glTexCoord4xvOES ------------------------------------------------------------
+
+glTexCoord4xvOES
+  :: MonadIO m
+  => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
+  -> m ()
+glTexCoord4xvOES v1 = liftIO $ dyn107 ptr_glTexCoord4xvOES v1
+
+{-# NOINLINE ptr_glTexCoord4xvOES #-}
+ptr_glTexCoord4xvOES :: FunPtr (Ptr GLfixed -> IO ())
+ptr_glTexCoord4xvOES = unsafePerformIO $ getCommand "glTexCoord4xvOES"
+
 -- glTexCoordFormatNV ----------------------------------------------------------
 
 glTexCoordFormatNV
@@ -1672,94 +1757,4 @@
 {-# NOINLINE ptr_glTextureLightEXT #-}
 ptr_glTextureLightEXT :: FunPtr (GLenum -> IO ())
 ptr_glTextureLightEXT = unsafePerformIO $ getCommand "glTextureLightEXT"
-
--- glTextureMaterialEXT --------------------------------------------------------
-
-glTextureMaterialEXT
-  :: MonadIO m
-  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
-  -> GLenum -- ^ @mode@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
-  -> m ()
-glTextureMaterialEXT v1 v2 = liftIO $ dyn51 ptr_glTextureMaterialEXT v1 v2
-
-{-# NOINLINE ptr_glTextureMaterialEXT #-}
-ptr_glTextureMaterialEXT :: FunPtr (GLenum -> GLenum -> IO ())
-ptr_glTextureMaterialEXT = unsafePerformIO $ getCommand "glTextureMaterialEXT"
-
--- glTextureNormalEXT ----------------------------------------------------------
-
-glTextureNormalEXT
-  :: MonadIO m
-  => GLenum -- ^ @mode@ of type @TextureNormalModeEXT@.
-  -> m ()
-glTextureNormalEXT v1 = liftIO $ dyn4 ptr_glTextureNormalEXT v1
-
-{-# NOINLINE ptr_glTextureNormalEXT #-}
-ptr_glTextureNormalEXT :: FunPtr (GLenum -> IO ())
-ptr_glTextureNormalEXT = unsafePerformIO $ getCommand "glTextureNormalEXT"
-
--- glTexturePageCommitmentEXT --------------------------------------------------
-
-glTexturePageCommitmentEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLint -- ^ @level@.
-  -> GLint -- ^ @xoffset@.
-  -> GLint -- ^ @yoffset@.
-  -> GLint -- ^ @zoffset@.
-  -> GLsizei -- ^ @width@.
-  -> GLsizei -- ^ @height@.
-  -> GLsizei -- ^ @depth@.
-  -> GLboolean -- ^ @commit@.
-  -> m ()
-glTexturePageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn755 ptr_glTexturePageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
-
-{-# NOINLINE ptr_glTexturePageCommitmentEXT #-}
-ptr_glTexturePageCommitmentEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
-ptr_glTexturePageCommitmentEXT = unsafePerformIO $ getCommand "glTexturePageCommitmentEXT"
-
--- glTextureParameterIiv -------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTextureParameterIiv
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLint -- ^ @params@.
-  -> m ()
-glTextureParameterIiv v1 v2 v3 = liftIO $ dyn334 ptr_glTextureParameterIiv v1 v2 v3
-
-{-# NOINLINE ptr_glTextureParameterIiv #-}
-ptr_glTextureParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
-ptr_glTextureParameterIiv = unsafePerformIO $ getCommand "glTextureParameterIiv"
-
--- glTextureParameterIivEXT ----------------------------------------------------
-
-glTextureParameterIivEXT
-  :: MonadIO m
-  => GLuint -- ^ @texture@ of type @Texture@.
-  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
-  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
-  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
-  -> m ()
-glTextureParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn363 ptr_glTextureParameterIivEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glTextureParameterIivEXT #-}
-ptr_glTextureParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
-ptr_glTextureParameterIivEXT = unsafePerformIO $ getCommand "glTextureParameterIivEXT"
-
--- glTextureParameterIuiv ------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
-glTextureParameterIuiv
-  :: MonadIO m
-  => GLuint -- ^ @texture@.
-  -> GLenum -- ^ @pname@.
-  -> Ptr GLuint -- ^ @params@.
-  -> m ()
-glTextureParameterIuiv v1 v2 v3 = liftIO $ dyn375 ptr_glTextureParameterIuiv v1 v2 v3
-
-{-# NOINLINE ptr_glTextureParameterIuiv #-}
-ptr_glTextureParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
-ptr_glTextureParameterIuiv = unsafePerformIO $ getCommand "glTextureParameterIuiv"
 
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,12 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F26 (
+  glTextureMaterialEXT,
+  glTextureNormalEXT,
+  glTexturePageCommitmentEXT,
+  glTextureParameterIiv,
+  glTextureParameterIivEXT,
+  glTextureParameterIuiv,
   glTextureParameterIuivEXT,
   glTextureParameterf,
   glTextureParameterfEXT,
@@ -108,13 +114,7 @@
   glUniform3f,
   glUniform3fARB,
   glUniform3fv,
-  glUniform3fvARB,
-  glUniform3i,
-  glUniform3i64ARB,
-  glUniform3i64NV,
-  glUniform3i64vARB,
-  glUniform3i64vNV,
-  glUniform3iARB
+  glUniform3fvARB
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,96 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glTextureMaterialEXT --------------------------------------------------------
+
+glTextureMaterialEXT
+  :: MonadIO m
+  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
+  -> GLenum -- ^ @mode@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
+  -> m ()
+glTextureMaterialEXT v1 v2 = liftIO $ dyn51 ptr_glTextureMaterialEXT v1 v2
+
+{-# NOINLINE ptr_glTextureMaterialEXT #-}
+ptr_glTextureMaterialEXT :: FunPtr (GLenum -> GLenum -> IO ())
+ptr_glTextureMaterialEXT = unsafePerformIO $ getCommand "glTextureMaterialEXT"
+
+-- glTextureNormalEXT ----------------------------------------------------------
+
+glTextureNormalEXT
+  :: MonadIO m
+  => GLenum -- ^ @mode@ of type @TextureNormalModeEXT@.
+  -> m ()
+glTextureNormalEXT v1 = liftIO $ dyn4 ptr_glTextureNormalEXT v1
+
+{-# NOINLINE ptr_glTextureNormalEXT #-}
+ptr_glTextureNormalEXT :: FunPtr (GLenum -> IO ())
+ptr_glTextureNormalEXT = unsafePerformIO $ getCommand "glTextureNormalEXT"
+
+-- glTexturePageCommitmentEXT --------------------------------------------------
+
+glTexturePageCommitmentEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLint -- ^ @level@.
+  -> GLint -- ^ @xoffset@.
+  -> GLint -- ^ @yoffset@.
+  -> GLint -- ^ @zoffset@.
+  -> GLsizei -- ^ @width@.
+  -> GLsizei -- ^ @height@.
+  -> GLsizei -- ^ @depth@.
+  -> GLboolean -- ^ @commit@.
+  -> m ()
+glTexturePageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9 = liftIO $ dyn755 ptr_glTexturePageCommitmentEXT v1 v2 v3 v4 v5 v6 v7 v8 v9
+
+{-# NOINLINE ptr_glTexturePageCommitmentEXT #-}
+ptr_glTexturePageCommitmentEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
+ptr_glTexturePageCommitmentEXT = unsafePerformIO $ getCommand "glTexturePageCommitmentEXT"
+
+-- glTextureParameterIiv -------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTextureParameterIiv
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLint -- ^ @params@.
+  -> m ()
+glTextureParameterIiv v1 v2 v3 = liftIO $ dyn334 ptr_glTextureParameterIiv v1 v2 v3
+
+{-# NOINLINE ptr_glTextureParameterIiv #-}
+ptr_glTextureParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
+ptr_glTextureParameterIiv = unsafePerformIO $ getCommand "glTextureParameterIiv"
+
+-- glTextureParameterIivEXT ----------------------------------------------------
+
+glTextureParameterIivEXT
+  :: MonadIO m
+  => GLuint -- ^ @texture@ of type @Texture@.
+  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
+  -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
+  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
+  -> m ()
+glTextureParameterIivEXT v1 v2 v3 v4 = liftIO $ dyn363 ptr_glTextureParameterIivEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glTextureParameterIivEXT #-}
+ptr_glTextureParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
+ptr_glTextureParameterIivEXT = unsafePerformIO $ getCommand "glTextureParameterIivEXT"
+
+-- glTextureParameterIuiv ------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
+glTextureParameterIuiv
+  :: MonadIO m
+  => GLuint -- ^ @texture@.
+  -> GLenum -- ^ @pname@.
+  -> Ptr GLuint -- ^ @params@.
+  -> m ()
+glTextureParameterIuiv v1 v2 v3 = liftIO $ dyn375 ptr_glTextureParameterIuiv v1 v2 v3
+
+{-# NOINLINE ptr_glTextureParameterIuiv #-}
+ptr_glTextureParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
+ptr_glTextureParameterIuiv = unsafePerformIO $ getCommand "glTextureParameterIuiv"
+
 -- glTextureParameterIuivEXT ---------------------------------------------------
 
 glTextureParameterIuivEXT
@@ -1585,94 +1675,4 @@
 {-# NOINLINE ptr_glUniform3fvARB #-}
 ptr_glUniform3fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
 ptr_glUniform3fvARB = unsafePerformIO $ getCommand "glUniform3fvARB"
-
--- glUniform3i -----------------------------------------------------------------
-
--- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <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>.
-glUniform3i
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> m ()
-glUniform3i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glUniform3i v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3i #-}
-ptr_glUniform3i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glUniform3i = unsafePerformIO $ getCommand "glUniform3i"
-
--- glUniform3i64ARB ------------------------------------------------------------
-
-glUniform3i64ARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64 -- ^ @x@.
-  -> GLint64 -- ^ @y@.
-  -> GLint64 -- ^ @z@.
-  -> m ()
-glUniform3i64ARB v1 v2 v3 v4 = liftIO $ dyn802 ptr_glUniform3i64ARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3i64ARB #-}
-ptr_glUniform3i64ARB :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
-ptr_glUniform3i64ARB = unsafePerformIO $ getCommand "glUniform3i64ARB"
-
--- glUniform3i64NV -------------------------------------------------------------
-
-glUniform3i64NV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint64EXT -- ^ @x@.
-  -> GLint64EXT -- ^ @y@.
-  -> GLint64EXT -- ^ @z@.
-  -> m ()
-glUniform3i64NV v1 v2 v3 v4 = liftIO $ dyn803 ptr_glUniform3i64NV v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3i64NV #-}
-ptr_glUniform3i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
-ptr_glUniform3i64NV = unsafePerformIO $ getCommand "glUniform3i64NV"
-
--- glUniform3i64vARB -----------------------------------------------------------
-
-glUniform3i64vARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64 -- ^ @value@ pointing to @count*3@ elements of type @GLint64@.
-  -> m ()
-glUniform3i64vARB v1 v2 v3 = liftIO $ dyn786 ptr_glUniform3i64vARB v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3i64vARB #-}
-ptr_glUniform3i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
-ptr_glUniform3i64vARB = unsafePerformIO $ getCommand "glUniform3i64vARB"
-
--- glUniform3i64vNV ------------------------------------------------------------
-
-glUniform3i64vNV
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLint64EXT@.
-  -> m ()
-glUniform3i64vNV v1 v2 v3 = liftIO $ dyn787 ptr_glUniform3i64vNV v1 v2 v3
-
-{-# NOINLINE ptr_glUniform3i64vNV #-}
-ptr_glUniform3i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
-ptr_glUniform3i64vNV = unsafePerformIO $ getCommand "glUniform3i64vNV"
-
--- glUniform3iARB --------------------------------------------------------------
-
--- | This command is an alias for 'glUniform3i'.
-glUniform3iARB
-  :: MonadIO m
-  => GLint -- ^ @location@.
-  -> GLint -- ^ @v0@.
-  -> GLint -- ^ @v1@.
-  -> GLint -- ^ @v2@.
-  -> m ()
-glUniform3iARB v1 v2 v3 v4 = liftIO $ dyn76 ptr_glUniform3iARB v1 v2 v3 v4
-
-{-# NOINLINE ptr_glUniform3iARB #-}
-ptr_glUniform3iARB :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
-ptr_glUniform3iARB = unsafePerformIO $ getCommand "glUniform3iARB"
 
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,12 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F27 (
+  glUniform3i,
+  glUniform3i64ARB,
+  glUniform3i64NV,
+  glUniform3i64vARB,
+  glUniform3i64vNV,
+  glUniform3iARB,
   glUniform3iv,
   glUniform3ivARB,
   glUniform3ui,
@@ -108,13 +114,7 @@
   glVDPAUUnmapSurfacesNV,
   glVDPAUUnregisterSurfaceNV,
   glValidateProgram,
-  glValidateProgramARB,
-  glValidateProgramPipeline,
-  glValidateProgramPipelineEXT,
-  glVariantArrayObjectATI,
-  glVariantPointerEXT,
-  glVariantbvEXT,
-  glVariantdvEXT
+  glValidateProgramARB
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,96 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glUniform3i -----------------------------------------------------------------
+
+-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <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>.
+glUniform3i
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> m ()
+glUniform3i v1 v2 v3 v4 = liftIO $ dyn76 ptr_glUniform3i v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3i #-}
+ptr_glUniform3i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glUniform3i = unsafePerformIO $ getCommand "glUniform3i"
+
+-- glUniform3i64ARB ------------------------------------------------------------
+
+glUniform3i64ARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64 -- ^ @x@.
+  -> GLint64 -- ^ @y@.
+  -> GLint64 -- ^ @z@.
+  -> m ()
+glUniform3i64ARB v1 v2 v3 v4 = liftIO $ dyn802 ptr_glUniform3i64ARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3i64ARB #-}
+ptr_glUniform3i64ARB :: FunPtr (GLint -> GLint64 -> GLint64 -> GLint64 -> IO ())
+ptr_glUniform3i64ARB = unsafePerformIO $ getCommand "glUniform3i64ARB"
+
+-- glUniform3i64NV -------------------------------------------------------------
+
+glUniform3i64NV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint64EXT -- ^ @x@.
+  -> GLint64EXT -- ^ @y@.
+  -> GLint64EXT -- ^ @z@.
+  -> m ()
+glUniform3i64NV v1 v2 v3 v4 = liftIO $ dyn803 ptr_glUniform3i64NV v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3i64NV #-}
+ptr_glUniform3i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
+ptr_glUniform3i64NV = unsafePerformIO $ getCommand "glUniform3i64NV"
+
+-- glUniform3i64vARB -----------------------------------------------------------
+
+glUniform3i64vARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64 -- ^ @value@ pointing to @count*3@ elements of type @GLint64@.
+  -> m ()
+glUniform3i64vARB v1 v2 v3 = liftIO $ dyn786 ptr_glUniform3i64vARB v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3i64vARB #-}
+ptr_glUniform3i64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLint64 -> IO ())
+ptr_glUniform3i64vARB = unsafePerformIO $ getCommand "glUniform3i64vARB"
+
+-- glUniform3i64vNV ------------------------------------------------------------
+
+glUniform3i64vNV
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLint64EXT@.
+  -> m ()
+glUniform3i64vNV v1 v2 v3 = liftIO $ dyn787 ptr_glUniform3i64vNV v1 v2 v3
+
+{-# NOINLINE ptr_glUniform3i64vNV #-}
+ptr_glUniform3i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
+ptr_glUniform3i64vNV = unsafePerformIO $ getCommand "glUniform3i64vNV"
+
+-- glUniform3iARB --------------------------------------------------------------
+
+-- | This command is an alias for 'glUniform3i'.
+glUniform3iARB
+  :: MonadIO m
+  => GLint -- ^ @location@.
+  -> GLint -- ^ @v0@.
+  -> GLint -- ^ @v1@.
+  -> GLint -- ^ @v2@.
+  -> m ()
+glUniform3iARB v1 v2 v3 v4 = liftIO $ dyn76 ptr_glUniform3iARB v1 v2 v3 v4
+
+{-# NOINLINE ptr_glUniform3iARB #-}
+ptr_glUniform3iARB :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
+ptr_glUniform3iARB = unsafePerformIO $ getCommand "glUniform3iARB"
+
 -- glUniform3iv ----------------------------------------------------------------
 
 -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <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>.
@@ -1505,86 +1595,4 @@
 {-# NOINLINE ptr_glValidateProgramARB #-}
 ptr_glValidateProgramARB :: FunPtr (GLhandleARB -> IO ())
 ptr_glValidateProgramARB = unsafePerformIO $ getCommand "glValidateProgramARB"
-
--- glValidateProgramPipeline ---------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glValidateProgramPipeline.xhtml OpenGL 4.x>.
-glValidateProgramPipeline
-  :: MonadIO m
-  => GLuint -- ^ @pipeline@.
-  -> m ()
-glValidateProgramPipeline v1 = liftIO $ dyn2 ptr_glValidateProgramPipeline v1
-
-{-# NOINLINE ptr_glValidateProgramPipeline #-}
-ptr_glValidateProgramPipeline :: FunPtr (GLuint -> IO ())
-ptr_glValidateProgramPipeline = unsafePerformIO $ getCommand "glValidateProgramPipeline"
-
--- glValidateProgramPipelineEXT ------------------------------------------------
-
-glValidateProgramPipelineEXT
-  :: MonadIO m
-  => GLuint -- ^ @pipeline@.
-  -> m ()
-glValidateProgramPipelineEXT v1 = liftIO $ dyn2 ptr_glValidateProgramPipelineEXT v1
-
-{-# NOINLINE ptr_glValidateProgramPipelineEXT #-}
-ptr_glValidateProgramPipelineEXT :: FunPtr (GLuint -> IO ())
-ptr_glValidateProgramPipelineEXT = unsafePerformIO $ getCommand "glValidateProgramPipelineEXT"
-
--- glVariantArrayObjectATI -----------------------------------------------------
-
-glVariantArrayObjectATI
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @type@ of type @ScalarType@.
-  -> GLsizei -- ^ @stride@.
-  -> GLuint -- ^ @buffer@.
-  -> GLuint -- ^ @offset@.
-  -> m ()
-glVariantArrayObjectATI v1 v2 v3 v4 v5 = liftIO $ dyn825 ptr_glVariantArrayObjectATI v1 v2 v3 v4 v5
-
-{-# NOINLINE ptr_glVariantArrayObjectATI #-}
-ptr_glVariantArrayObjectATI :: FunPtr (GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
-ptr_glVariantArrayObjectATI = unsafePerformIO $ getCommand "glVariantArrayObjectATI"
-
--- glVariantPointerEXT ---------------------------------------------------------
-
-glVariantPointerEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> GLenum -- ^ @type@ of type @ScalarType@.
-  -> GLuint -- ^ @stride@.
-  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type,stride)@ elements of type @a@.
-  -> m ()
-glVariantPointerEXT v1 v2 v3 v4 = liftIO $ dyn826 ptr_glVariantPointerEXT v1 v2 v3 v4
-
-{-# NOINLINE ptr_glVariantPointerEXT #-}
-ptr_glVariantPointerEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr a -> IO ())
-ptr_glVariantPointerEXT = unsafePerformIO $ getCommand "glVariantPointerEXT"
-
--- glVariantbvEXT --------------------------------------------------------------
-
-glVariantbvEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLbyte -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLbyte@.
-  -> m ()
-glVariantbvEXT v1 v2 = liftIO $ dyn827 ptr_glVariantbvEXT v1 v2
-
-{-# NOINLINE ptr_glVariantbvEXT #-}
-ptr_glVariantbvEXT :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
-ptr_glVariantbvEXT = unsafePerformIO $ getCommand "glVariantbvEXT"
-
--- glVariantdvEXT --------------------------------------------------------------
-
-glVariantdvEXT
-  :: MonadIO m
-  => GLuint -- ^ @id@.
-  -> Ptr GLdouble -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLdouble@.
-  -> m ()
-glVariantdvEXT v1 v2 = liftIO $ dyn828 ptr_glVariantdvEXT v1 v2
-
-{-# NOINLINE ptr_glVariantdvEXT #-}
-ptr_glVariantdvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
-ptr_glVariantdvEXT = unsafePerformIO $ getCommand "glVariantdvEXT"
 
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,12 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F28 (
+  glValidateProgramPipeline,
+  glValidateProgramPipelineEXT,
+  glVariantArrayObjectATI,
+  glVariantPointerEXT,
+  glVariantbvEXT,
+  glVariantdvEXT,
   glVariantfvEXT,
   glVariantivEXT,
   glVariantsvEXT,
@@ -108,13 +114,7 @@
   glVertexAttrib1hNV,
   glVertexAttrib1hvNV,
   glVertexAttrib1s,
-  glVertexAttrib1sARB,
-  glVertexAttrib1sNV,
-  glVertexAttrib1sv,
-  glVertexAttrib1svARB,
-  glVertexAttrib1svNV,
-  glVertexAttrib2d,
-  glVertexAttrib2dARB
+  glVertexAttrib1sARB
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,88 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glValidateProgramPipeline ---------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glValidateProgramPipeline.xhtml OpenGL 4.x>.
+glValidateProgramPipeline
+  :: MonadIO m
+  => GLuint -- ^ @pipeline@.
+  -> m ()
+glValidateProgramPipeline v1 = liftIO $ dyn2 ptr_glValidateProgramPipeline v1
+
+{-# NOINLINE ptr_glValidateProgramPipeline #-}
+ptr_glValidateProgramPipeline :: FunPtr (GLuint -> IO ())
+ptr_glValidateProgramPipeline = unsafePerformIO $ getCommand "glValidateProgramPipeline"
+
+-- glValidateProgramPipelineEXT ------------------------------------------------
+
+glValidateProgramPipelineEXT
+  :: MonadIO m
+  => GLuint -- ^ @pipeline@.
+  -> m ()
+glValidateProgramPipelineEXT v1 = liftIO $ dyn2 ptr_glValidateProgramPipelineEXT v1
+
+{-# NOINLINE ptr_glValidateProgramPipelineEXT #-}
+ptr_glValidateProgramPipelineEXT :: FunPtr (GLuint -> IO ())
+ptr_glValidateProgramPipelineEXT = unsafePerformIO $ getCommand "glValidateProgramPipelineEXT"
+
+-- glVariantArrayObjectATI -----------------------------------------------------
+
+glVariantArrayObjectATI
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @type@ of type @ScalarType@.
+  -> GLsizei -- ^ @stride@.
+  -> GLuint -- ^ @buffer@.
+  -> GLuint -- ^ @offset@.
+  -> m ()
+glVariantArrayObjectATI v1 v2 v3 v4 v5 = liftIO $ dyn825 ptr_glVariantArrayObjectATI v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glVariantArrayObjectATI #-}
+ptr_glVariantArrayObjectATI :: FunPtr (GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
+ptr_glVariantArrayObjectATI = unsafePerformIO $ getCommand "glVariantArrayObjectATI"
+
+-- glVariantPointerEXT ---------------------------------------------------------
+
+glVariantPointerEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> GLenum -- ^ @type@ of type @ScalarType@.
+  -> GLuint -- ^ @stride@.
+  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type,stride)@ elements of type @a@.
+  -> m ()
+glVariantPointerEXT v1 v2 v3 v4 = liftIO $ dyn826 ptr_glVariantPointerEXT v1 v2 v3 v4
+
+{-# NOINLINE ptr_glVariantPointerEXT #-}
+ptr_glVariantPointerEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr a -> IO ())
+ptr_glVariantPointerEXT = unsafePerformIO $ getCommand "glVariantPointerEXT"
+
+-- glVariantbvEXT --------------------------------------------------------------
+
+glVariantbvEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLbyte -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLbyte@.
+  -> m ()
+glVariantbvEXT v1 v2 = liftIO $ dyn827 ptr_glVariantbvEXT v1 v2
+
+{-# NOINLINE ptr_glVariantbvEXT #-}
+ptr_glVariantbvEXT :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
+ptr_glVariantbvEXT = unsafePerformIO $ getCommand "glVariantbvEXT"
+
+-- glVariantdvEXT --------------------------------------------------------------
+
+glVariantdvEXT
+  :: MonadIO m
+  => GLuint -- ^ @id@.
+  -> Ptr GLdouble -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLdouble@.
+  -> m ()
+glVariantdvEXT v1 v2 = liftIO $ dyn828 ptr_glVariantdvEXT v1 v2
+
+{-# NOINLINE ptr_glVariantdvEXT #-}
+ptr_glVariantdvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
+ptr_glVariantdvEXT = unsafePerformIO $ getCommand "glVariantdvEXT"
+
 -- glVariantfvEXT --------------------------------------------------------------
 
 glVariantfvEXT
@@ -1474,90 +1556,4 @@
 {-# NOINLINE ptr_glVertexAttrib1sARB #-}
 ptr_glVertexAttrib1sARB :: FunPtr (GLuint -> GLshort -> IO ())
 ptr_glVertexAttrib1sARB = unsafePerformIO $ getCommand "glVertexAttrib1sARB"
-
--- glVertexAttrib1sNV ----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib1svNV'. This command is an alias for 'glVertexAttrib1s'.
-glVertexAttrib1sNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLshort -- ^ @x@.
-  -> m ()
-glVertexAttrib1sNV v1 v2 = liftIO $ dyn845 ptr_glVertexAttrib1sNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1sNV #-}
-ptr_glVertexAttrib1sNV :: FunPtr (GLuint -> GLshort -> IO ())
-ptr_glVertexAttrib1sNV = unsafePerformIO $ getCommand "glVertexAttrib1sNV"
-
--- glVertexAttrib1sv -----------------------------------------------------------
-
--- | 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>.
-glVertexAttrib1sv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
-  -> m ()
-glVertexAttrib1sv v1 v2 = liftIO $ dyn829 ptr_glVertexAttrib1sv v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1sv #-}
-ptr_glVertexAttrib1sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib1sv = unsafePerformIO $ getCommand "glVertexAttrib1sv"
-
--- glVertexAttrib1svARB --------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib1sv'.
-glVertexAttrib1svARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
-  -> m ()
-glVertexAttrib1svARB v1 v2 = liftIO $ dyn829 ptr_glVertexAttrib1svARB v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1svARB #-}
-ptr_glVertexAttrib1svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib1svARB = unsafePerformIO $ getCommand "glVertexAttrib1svARB"
-
--- glVertexAttrib1svNV ---------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttrib1sv'.
-glVertexAttrib1svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
-  -> m ()
-glVertexAttrib1svNV v1 v2 = liftIO $ dyn829 ptr_glVertexAttrib1svNV v1 v2
-
-{-# NOINLINE ptr_glVertexAttrib1svNV #-}
-ptr_glVertexAttrib1svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
-ptr_glVertexAttrib1svNV = unsafePerformIO $ getCommand "glVertexAttrib1svNV"
-
--- glVertexAttrib2d ------------------------------------------------------------
-
--- | 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>. The vector equivalent of this command is 'glVertexAttrib2dv'.
-glVertexAttrib2d
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glVertexAttrib2d v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttrib2d v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2d #-}
-ptr_glVertexAttrib2d :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib2d = unsafePerformIO $ getCommand "glVertexAttrib2d"
-
--- glVertexAttrib2dARB ---------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttrib2dvARB'. This command is an alias for 'glVertexAttrib2d'.
-glVertexAttrib2dARB
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLdouble -- ^ @x@.
-  -> GLdouble -- ^ @y@.
-  -> m ()
-glVertexAttrib2dARB v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttrib2dARB v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttrib2dARB #-}
-ptr_glVertexAttrib2dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
-ptr_glVertexAttrib2dARB = unsafePerformIO $ getCommand "glVertexAttrib2dARB"
 
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,12 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F29 (
+  glVertexAttrib1sNV,
+  glVertexAttrib1sv,
+  glVertexAttrib1svARB,
+  glVertexAttrib1svNV,
+  glVertexAttrib2d,
+  glVertexAttrib2dARB,
   glVertexAttrib2dNV,
   glVertexAttrib2dv,
   glVertexAttrib2dvARB,
@@ -108,13 +114,7 @@
   glVertexAttribDivisorNV,
   glVertexAttribFormat,
   glVertexAttribFormatNV,
-  glVertexAttribI1i,
-  glVertexAttribI1iEXT,
-  glVertexAttribI1iv,
-  glVertexAttribI1ivEXT,
-  glVertexAttribI1ui,
-  glVertexAttribI1uiEXT,
-  glVertexAttribI1uiv
+  glVertexAttribI1i
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,92 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glVertexAttrib1sNV ----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib1svNV'. This command is an alias for 'glVertexAttrib1s'.
+glVertexAttrib1sNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLshort -- ^ @x@.
+  -> m ()
+glVertexAttrib1sNV v1 v2 = liftIO $ dyn845 ptr_glVertexAttrib1sNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1sNV #-}
+ptr_glVertexAttrib1sNV :: FunPtr (GLuint -> GLshort -> IO ())
+ptr_glVertexAttrib1sNV = unsafePerformIO $ getCommand "glVertexAttrib1sNV"
+
+-- glVertexAttrib1sv -----------------------------------------------------------
+
+-- | 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>.
+glVertexAttrib1sv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
+  -> m ()
+glVertexAttrib1sv v1 v2 = liftIO $ dyn829 ptr_glVertexAttrib1sv v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1sv #-}
+ptr_glVertexAttrib1sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib1sv = unsafePerformIO $ getCommand "glVertexAttrib1sv"
+
+-- glVertexAttrib1svARB --------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib1sv'.
+glVertexAttrib1svARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
+  -> m ()
+glVertexAttrib1svARB v1 v2 = liftIO $ dyn829 ptr_glVertexAttrib1svARB v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1svARB #-}
+ptr_glVertexAttrib1svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib1svARB = unsafePerformIO $ getCommand "glVertexAttrib1svARB"
+
+-- glVertexAttrib1svNV ---------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttrib1sv'.
+glVertexAttrib1svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLshort -- ^ @v@ pointing to @1@ element of type @GLshort@.
+  -> m ()
+glVertexAttrib1svNV v1 v2 = liftIO $ dyn829 ptr_glVertexAttrib1svNV v1 v2
+
+{-# NOINLINE ptr_glVertexAttrib1svNV #-}
+ptr_glVertexAttrib1svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
+ptr_glVertexAttrib1svNV = unsafePerformIO $ getCommand "glVertexAttrib1svNV"
+
+-- glVertexAttrib2d ------------------------------------------------------------
+
+-- | 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>. The vector equivalent of this command is 'glVertexAttrib2dv'.
+glVertexAttrib2d
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glVertexAttrib2d v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttrib2d v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2d #-}
+ptr_glVertexAttrib2d :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib2d = unsafePerformIO $ getCommand "glVertexAttrib2d"
+
+-- glVertexAttrib2dARB ---------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttrib2dvARB'. This command is an alias for 'glVertexAttrib2d'.
+glVertexAttrib2dARB
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLdouble -- ^ @x@.
+  -> GLdouble -- ^ @y@.
+  -> m ()
+glVertexAttrib2dARB v1 v2 v3 = liftIO $ dyn220 ptr_glVertexAttrib2dARB v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttrib2dARB #-}
+ptr_glVertexAttrib2dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
+ptr_glVertexAttrib2dARB = unsafePerformIO $ getCommand "glVertexAttrib2dARB"
+
 -- glVertexAttrib2dNV ----------------------------------------------------------
 
 -- | The vector equivalent of this command is 'glVertexAttrib2dvNV'. This command is an alias for 'glVertexAttrib2d'.
@@ -1511,88 +1597,4 @@
 {-# NOINLINE ptr_glVertexAttribI1i #-}
 ptr_glVertexAttribI1i :: FunPtr (GLuint -> GLint -> IO ())
 ptr_glVertexAttribI1i = unsafePerformIO $ getCommand "glVertexAttribI1i"
-
--- glVertexAttribI1iEXT --------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI1ivEXT'. This command is an alias for 'glVertexAttribI1i'.
-glVertexAttribI1iEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLint -- ^ @x@.
-  -> m ()
-glVertexAttribI1iEXT v1 v2 = liftIO $ dyn474 ptr_glVertexAttribI1iEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1iEXT #-}
-ptr_glVertexAttribI1iEXT :: FunPtr (GLuint -> GLint -> IO ())
-ptr_glVertexAttribI1iEXT = unsafePerformIO $ getCommand "glVertexAttribI1iEXT"
-
--- glVertexAttribI1iv ----------------------------------------------------------
-
--- | 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>.
-glVertexAttribI1iv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glVertexAttribI1iv v1 v2 = liftIO $ dyn701 ptr_glVertexAttribI1iv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1iv #-}
-ptr_glVertexAttribI1iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI1iv = unsafePerformIO $ getCommand "glVertexAttribI1iv"
-
--- glVertexAttribI1ivEXT -------------------------------------------------------
-
--- | This command is an alias for 'glVertexAttribI1iv'.
-glVertexAttribI1ivEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @GLint@.
-  -> m ()
-glVertexAttribI1ivEXT v1 v2 = liftIO $ dyn701 ptr_glVertexAttribI1ivEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1ivEXT #-}
-ptr_glVertexAttribI1ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
-ptr_glVertexAttribI1ivEXT = unsafePerformIO $ getCommand "glVertexAttribI1ivEXT"
-
--- glVertexAttribI1ui ----------------------------------------------------------
-
--- | 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>. The vector equivalent of this command is 'glVertexAttribI1uiv'.
-glVertexAttribI1ui
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> m ()
-glVertexAttribI1ui v1 v2 = liftIO $ dyn3 ptr_glVertexAttribI1ui v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1ui #-}
-ptr_glVertexAttribI1ui :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI1ui = unsafePerformIO $ getCommand "glVertexAttribI1ui"
-
--- glVertexAttribI1uiEXT -------------------------------------------------------
-
--- | The vector equivalent of this command is 'glVertexAttribI1uivEXT'. This command is an alias for 'glVertexAttribI1ui'.
-glVertexAttribI1uiEXT
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLuint -- ^ @x@.
-  -> m ()
-glVertexAttribI1uiEXT v1 v2 = liftIO $ dyn3 ptr_glVertexAttribI1uiEXT v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1uiEXT #-}
-ptr_glVertexAttribI1uiEXT :: FunPtr (GLuint -> GLuint -> IO ())
-ptr_glVertexAttribI1uiEXT = unsafePerformIO $ getCommand "glVertexAttribI1uiEXT"
-
--- glVertexAttribI1uiv ---------------------------------------------------------
-
--- | 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>.
-glVertexAttribI1uiv
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> Ptr GLuint -- ^ @v@ pointing to @1@ element of type @GLuint@.
-  -> m ()
-glVertexAttribI1uiv v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI1uiv v1 v2
-
-{-# NOINLINE ptr_glVertexAttribI1uiv #-}
-ptr_glVertexAttribI1uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
-ptr_glVertexAttribI1uiv = unsafePerformIO $ getCommand "glVertexAttribI1uiv"
 
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,12 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F30 (
+  glVertexAttribI1iEXT,
+  glVertexAttribI1iv,
+  glVertexAttribI1ivEXT,
+  glVertexAttribI1ui,
+  glVertexAttribI1uiEXT,
+  glVertexAttribI1uiv,
   glVertexAttribI1uivEXT,
   glVertexAttribI2i,
   glVertexAttribI2iEXT,
@@ -108,13 +114,7 @@
   glVertexAttribs1svNV,
   glVertexAttribs2dvNV,
   glVertexAttribs2fvNV,
-  glVertexAttribs2hvNV,
-  glVertexAttribs2svNV,
-  glVertexAttribs3dvNV,
-  glVertexAttribs3fvNV,
-  glVertexAttribs3hvNV,
-  glVertexAttribs3svNV,
-  glVertexAttribs4dvNV
+  glVertexAttribs2hvNV
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,90 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glVertexAttribI1iEXT --------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI1ivEXT'. This command is an alias for 'glVertexAttribI1i'.
+glVertexAttribI1iEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLint -- ^ @x@.
+  -> m ()
+glVertexAttribI1iEXT v1 v2 = liftIO $ dyn474 ptr_glVertexAttribI1iEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1iEXT #-}
+ptr_glVertexAttribI1iEXT :: FunPtr (GLuint -> GLint -> IO ())
+ptr_glVertexAttribI1iEXT = unsafePerformIO $ getCommand "glVertexAttribI1iEXT"
+
+-- glVertexAttribI1iv ----------------------------------------------------------
+
+-- | 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>.
+glVertexAttribI1iv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glVertexAttribI1iv v1 v2 = liftIO $ dyn701 ptr_glVertexAttribI1iv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1iv #-}
+ptr_glVertexAttribI1iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI1iv = unsafePerformIO $ getCommand "glVertexAttribI1iv"
+
+-- glVertexAttribI1ivEXT -------------------------------------------------------
+
+-- | This command is an alias for 'glVertexAttribI1iv'.
+glVertexAttribI1ivEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLint -- ^ @v@ pointing to @1@ element of type @GLint@.
+  -> m ()
+glVertexAttribI1ivEXT v1 v2 = liftIO $ dyn701 ptr_glVertexAttribI1ivEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1ivEXT #-}
+ptr_glVertexAttribI1ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
+ptr_glVertexAttribI1ivEXT = unsafePerformIO $ getCommand "glVertexAttribI1ivEXT"
+
+-- glVertexAttribI1ui ----------------------------------------------------------
+
+-- | 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>. The vector equivalent of this command is 'glVertexAttribI1uiv'.
+glVertexAttribI1ui
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> m ()
+glVertexAttribI1ui v1 v2 = liftIO $ dyn3 ptr_glVertexAttribI1ui v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1ui #-}
+ptr_glVertexAttribI1ui :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI1ui = unsafePerformIO $ getCommand "glVertexAttribI1ui"
+
+-- glVertexAttribI1uiEXT -------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glVertexAttribI1uivEXT'. This command is an alias for 'glVertexAttribI1ui'.
+glVertexAttribI1uiEXT
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLuint -- ^ @x@.
+  -> m ()
+glVertexAttribI1uiEXT v1 v2 = liftIO $ dyn3 ptr_glVertexAttribI1uiEXT v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1uiEXT #-}
+ptr_glVertexAttribI1uiEXT :: FunPtr (GLuint -> GLuint -> IO ())
+ptr_glVertexAttribI1uiEXT = unsafePerformIO $ getCommand "glVertexAttribI1uiEXT"
+
+-- glVertexAttribI1uiv ---------------------------------------------------------
+
+-- | 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>.
+glVertexAttribI1uiv
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLuint -- ^ @v@ pointing to @1@ element of type @GLuint@.
+  -> m ()
+glVertexAttribI1uiv v1 v2 = liftIO $ dyn194 ptr_glVertexAttribI1uiv v1 v2
+
+{-# NOINLINE ptr_glVertexAttribI1uiv #-}
+ptr_glVertexAttribI1uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
+ptr_glVertexAttribI1uiv = unsafePerformIO $ getCommand "glVertexAttribI1uiv"
+
 -- glVertexAttribI1uivEXT ------------------------------------------------------
 
 -- | This command is an alias for 'glVertexAttribI1uiv'.
@@ -1508,88 +1592,4 @@
 {-# NOINLINE ptr_glVertexAttribs2hvNV #-}
 ptr_glVertexAttribs2hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
 ptr_glVertexAttribs2hvNV = unsafePerformIO $ getCommand "glVertexAttribs2hvNV"
-
--- glVertexAttribs2svNV --------------------------------------------------------
-
-glVertexAttribs2svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLshort -- ^ @v@ pointing to @count*2@ elements of type @GLshort@.
-  -> m ()
-glVertexAttribs2svNV v1 v2 v3 = liftIO $ dyn877 ptr_glVertexAttribs2svNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs2svNV #-}
-ptr_glVertexAttribs2svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
-ptr_glVertexAttribs2svNV = unsafePerformIO $ getCommand "glVertexAttribs2svNV"
-
--- glVertexAttribs3dvNV --------------------------------------------------------
-
-glVertexAttribs3dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @count*3@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribs3dvNV v1 v2 v3 = liftIO $ dyn219 ptr_glVertexAttribs3dvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs3dvNV #-}
-ptr_glVertexAttribs3dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribs3dvNV = unsafePerformIO $ getCommand "glVertexAttribs3dvNV"
-
--- glVertexAttribs3fvNV --------------------------------------------------------
-
-glVertexAttribs3fvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLfloat -- ^ @v@ pointing to @count*3@ elements of type @GLfloat@.
-  -> m ()
-glVertexAttribs3fvNV v1 v2 v3 = liftIO $ dyn218 ptr_glVertexAttribs3fvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs3fvNV #-}
-ptr_glVertexAttribs3fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
-ptr_glVertexAttribs3fvNV = unsafePerformIO $ getCommand "glVertexAttribs3fvNV"
-
--- glVertexAttribs3hvNV --------------------------------------------------------
-
-glVertexAttribs3hvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @n@.
-  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
-  -> m ()
-glVertexAttribs3hvNV v1 v2 v3 = liftIO $ dyn876 ptr_glVertexAttribs3hvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs3hvNV #-}
-ptr_glVertexAttribs3hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
-ptr_glVertexAttribs3hvNV = unsafePerformIO $ getCommand "glVertexAttribs3hvNV"
-
--- glVertexAttribs3svNV --------------------------------------------------------
-
-glVertexAttribs3svNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLshort -- ^ @v@ pointing to @count*3@ elements of type @GLshort@.
-  -> m ()
-glVertexAttribs3svNV v1 v2 v3 = liftIO $ dyn877 ptr_glVertexAttribs3svNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs3svNV #-}
-ptr_glVertexAttribs3svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
-ptr_glVertexAttribs3svNV = unsafePerformIO $ getCommand "glVertexAttribs3svNV"
-
--- glVertexAttribs4dvNV --------------------------------------------------------
-
-glVertexAttribs4dvNV
-  :: MonadIO m
-  => GLuint -- ^ @index@.
-  -> GLsizei -- ^ @count@.
-  -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
-  -> m ()
-glVertexAttribs4dvNV v1 v2 v3 = liftIO $ dyn219 ptr_glVertexAttribs4dvNV v1 v2 v3
-
-{-# NOINLINE ptr_glVertexAttribs4dvNV #-}
-ptr_glVertexAttribs4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
-ptr_glVertexAttribs4dvNV = unsafePerformIO $ getCommand "glVertexAttribs4dvNV"
 
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,12 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F31 (
+  glVertexAttribs2svNV,
+  glVertexAttribs3dvNV,
+  glVertexAttribs3fvNV,
+  glVertexAttribs3hvNV,
+  glVertexAttribs3svNV,
+  glVertexAttribs4dvNV,
   glVertexAttribs4fvNV,
   glVertexAttribs4hvNV,
   glVertexAttribs4svNV,
@@ -78,10 +84,13 @@
   glViewport,
   glViewportArrayv,
   glViewportArrayvNV,
+  glViewportArrayvOES,
   glViewportIndexedf,
   glViewportIndexedfNV,
+  glViewportIndexedfOES,
   glViewportIndexedfv,
   glViewportIndexedfvNV,
+  glViewportIndexedfvOES,
   glViewportPositionWScaleNV,
   glViewportSwizzleNV,
   glWaitSync,
@@ -105,16 +114,7 @@
   glWindowPos2dvMESA,
   glWindowPos2f,
   glWindowPos2fARB,
-  glWindowPos2fMESA,
-  glWindowPos2fv,
-  glWindowPos2fvARB,
-  glWindowPos2fvMESA,
-  glWindowPos2i,
-  glWindowPos2iARB,
-  glWindowPos2iMESA,
-  glWindowPos2iv,
-  glWindowPos2ivARB,
-  glWindowPos2ivMESA
+  glWindowPos2fMESA
 ) where
 
 import Control.Monad.IO.Class ( MonadIO(..) )
@@ -123,6 +123,90 @@
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
 
+-- glVertexAttribs2svNV --------------------------------------------------------
+
+glVertexAttribs2svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLshort -- ^ @v@ pointing to @count*2@ elements of type @GLshort@.
+  -> m ()
+glVertexAttribs2svNV v1 v2 v3 = liftIO $ dyn877 ptr_glVertexAttribs2svNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs2svNV #-}
+ptr_glVertexAttribs2svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
+ptr_glVertexAttribs2svNV = unsafePerformIO $ getCommand "glVertexAttribs2svNV"
+
+-- glVertexAttribs3dvNV --------------------------------------------------------
+
+glVertexAttribs3dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @count*3@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribs3dvNV v1 v2 v3 = liftIO $ dyn219 ptr_glVertexAttribs3dvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs3dvNV #-}
+ptr_glVertexAttribs3dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribs3dvNV = unsafePerformIO $ getCommand "glVertexAttribs3dvNV"
+
+-- glVertexAttribs3fvNV --------------------------------------------------------
+
+glVertexAttribs3fvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @count*3@ elements of type @GLfloat@.
+  -> m ()
+glVertexAttribs3fvNV v1 v2 v3 = liftIO $ dyn218 ptr_glVertexAttribs3fvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs3fvNV #-}
+ptr_glVertexAttribs3fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glVertexAttribs3fvNV = unsafePerformIO $ getCommand "glVertexAttribs3fvNV"
+
+-- glVertexAttribs3hvNV --------------------------------------------------------
+
+glVertexAttribs3hvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @n@.
+  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
+  -> m ()
+glVertexAttribs3hvNV v1 v2 v3 = liftIO $ dyn876 ptr_glVertexAttribs3hvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs3hvNV #-}
+ptr_glVertexAttribs3hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
+ptr_glVertexAttribs3hvNV = unsafePerformIO $ getCommand "glVertexAttribs3hvNV"
+
+-- glVertexAttribs3svNV --------------------------------------------------------
+
+glVertexAttribs3svNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLshort -- ^ @v@ pointing to @count*3@ elements of type @GLshort@.
+  -> m ()
+glVertexAttribs3svNV v1 v2 v3 = liftIO $ dyn877 ptr_glVertexAttribs3svNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs3svNV #-}
+ptr_glVertexAttribs3svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
+ptr_glVertexAttribs3svNV = unsafePerformIO $ getCommand "glVertexAttribs3svNV"
+
+-- glVertexAttribs4dvNV --------------------------------------------------------
+
+glVertexAttribs4dvNV
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
+  -> m ()
+glVertexAttribs4dvNV v1 v2 v3 = liftIO $ dyn219 ptr_glVertexAttribs4dvNV v1 v2 v3
+
+{-# NOINLINE ptr_glVertexAttribs4dvNV #-}
+ptr_glVertexAttribs4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
+ptr_glVertexAttribs4dvNV = unsafePerformIO $ getCommand "glVertexAttribs4dvNV"
+
 -- glVertexAttribs4fvNV --------------------------------------------------------
 
 glVertexAttribs4fvNV
@@ -995,6 +1079,21 @@
 ptr_glViewportArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
 ptr_glViewportArrayvNV = unsafePerformIO $ getCommand "glViewportArrayvNV"
 
+-- glViewportArrayvOES ---------------------------------------------------------
+
+-- | This command is an alias for 'glViewportArrayv'.
+glViewportArrayvOES
+  :: MonadIO m
+  => GLuint -- ^ @first@.
+  -> GLsizei -- ^ @count@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
+  -> m ()
+glViewportArrayvOES v1 v2 v3 = liftIO $ dyn218 ptr_glViewportArrayvOES v1 v2 v3
+
+{-# NOINLINE ptr_glViewportArrayvOES #-}
+ptr_glViewportArrayvOES :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
+ptr_glViewportArrayvOES = unsafePerformIO $ getCommand "glViewportArrayvOES"
+
 -- glViewportIndexedf ----------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportIndexed.xhtml OpenGL 4.x>.
@@ -1029,6 +1128,23 @@
 ptr_glViewportIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
 ptr_glViewportIndexedfNV = unsafePerformIO $ getCommand "glViewportIndexedfNV"
 
+-- glViewportIndexedfOES -------------------------------------------------------
+
+-- | This command is an alias for 'glViewportIndexedf'.
+glViewportIndexedfOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> GLfloat -- ^ @x@.
+  -> GLfloat -- ^ @y@.
+  -> GLfloat -- ^ @w@.
+  -> GLfloat -- ^ @h@.
+  -> m ()
+glViewportIndexedfOES v1 v2 v3 v4 v5 = liftIO $ dyn853 ptr_glViewportIndexedfOES v1 v2 v3 v4 v5
+
+{-# NOINLINE ptr_glViewportIndexedfOES #-}
+ptr_glViewportIndexedfOES :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
+ptr_glViewportIndexedfOES = unsafePerformIO $ getCommand "glViewportIndexedfOES"
+
 -- glViewportIndexedfv ---------------------------------------------------------
 
 -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportIndexed.xhtml OpenGL 4.x>.
@@ -1057,6 +1173,20 @@
 ptr_glViewportIndexedfvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
 ptr_glViewportIndexedfvNV = unsafePerformIO $ getCommand "glViewportIndexedfvNV"
 
+-- glViewportIndexedfvOES ------------------------------------------------------
+
+-- | This command is an alias for 'glViewportIndexedfv'.
+glViewportIndexedfvOES
+  :: MonadIO m
+  => GLuint -- ^ @index@.
+  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
+  -> m ()
+glViewportIndexedfvOES v1 v2 = liftIO $ dyn377 ptr_glViewportIndexedfvOES v1 v2
+
+{-# NOINLINE ptr_glViewportIndexedfvOES #-}
+ptr_glViewportIndexedfvOES :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
+ptr_glViewportIndexedfvOES = unsafePerformIO $ getCommand "glViewportIndexedfvOES"
+
 -- glViewportPositionWScaleNV --------------------------------------------------
 
 glViewportPositionWScaleNV
@@ -1388,124 +1518,4 @@
 {-# NOINLINE ptr_glWindowPos2fMESA #-}
 ptr_glWindowPos2fMESA :: FunPtr (GLfloat -> GLfloat -> IO ())
 ptr_glWindowPos2fMESA = unsafePerformIO $ getCommand "glWindowPos2fMESA"
-
--- glWindowPos2fv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos2fv
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glWindowPos2fv v1 = liftIO $ dyn41 ptr_glWindowPos2fv v1
-
-{-# NOINLINE ptr_glWindowPos2fv #-}
-ptr_glWindowPos2fv :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos2fv = unsafePerformIO $ getCommand "glWindowPos2fv"
-
--- glWindowPos2fvARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2fv'.
-glWindowPos2fvARB
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glWindowPos2fvARB v1 = liftIO $ dyn41 ptr_glWindowPos2fvARB v1
-
-{-# NOINLINE ptr_glWindowPos2fvARB #-}
-ptr_glWindowPos2fvARB :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos2fvARB = unsafePerformIO $ getCommand "glWindowPos2fvARB"
-
--- glWindowPos2fvMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2fv'.
-glWindowPos2fvMESA
-  :: MonadIO m
-  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
-  -> m ()
-glWindowPos2fvMESA v1 = liftIO $ dyn41 ptr_glWindowPos2fvMESA v1
-
-{-# NOINLINE ptr_glWindowPos2fvMESA #-}
-ptr_glWindowPos2fvMESA :: FunPtr (Ptr GLfloat -> IO ())
-ptr_glWindowPos2fvMESA = unsafePerformIO $ getCommand "glWindowPos2fvMESA"
-
--- glWindowPos2i ---------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2iv'.
-glWindowPos2i
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> m ()
-glWindowPos2i v1 v2 = liftIO $ dyn266 ptr_glWindowPos2i v1 v2
-
-{-# NOINLINE ptr_glWindowPos2i #-}
-ptr_glWindowPos2i :: FunPtr (GLint -> GLint -> IO ())
-ptr_glWindowPos2i = unsafePerformIO $ getCommand "glWindowPos2i"
-
--- glWindowPos2iARB ------------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2ivARB'. This command is an alias for 'glWindowPos2i'.
-glWindowPos2iARB
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> m ()
-glWindowPos2iARB v1 v2 = liftIO $ dyn266 ptr_glWindowPos2iARB v1 v2
-
-{-# NOINLINE ptr_glWindowPos2iARB #-}
-ptr_glWindowPos2iARB :: FunPtr (GLint -> GLint -> IO ())
-ptr_glWindowPos2iARB = unsafePerformIO $ getCommand "glWindowPos2iARB"
-
--- glWindowPos2iMESA -----------------------------------------------------------
-
--- | The vector equivalent of this command is 'glWindowPos2ivMESA'. This command is an alias for 'glWindowPos2i'.
-glWindowPos2iMESA
-  :: MonadIO m
-  => GLint -- ^ @x@ of type @CoordI@.
-  -> GLint -- ^ @y@ of type @CoordI@.
-  -> m ()
-glWindowPos2iMESA v1 v2 = liftIO $ dyn266 ptr_glWindowPos2iMESA v1 v2
-
-{-# NOINLINE ptr_glWindowPos2iMESA #-}
-ptr_glWindowPos2iMESA :: FunPtr (GLint -> GLint -> IO ())
-ptr_glWindowPos2iMESA = unsafePerformIO $ getCommand "glWindowPos2iMESA"
-
--- glWindowPos2iv --------------------------------------------------------------
-
--- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
-glWindowPos2iv
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glWindowPos2iv v1 = liftIO $ dyn43 ptr_glWindowPos2iv v1
-
-{-# NOINLINE ptr_glWindowPos2iv #-}
-ptr_glWindowPos2iv :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos2iv = unsafePerformIO $ getCommand "glWindowPos2iv"
-
--- glWindowPos2ivARB -----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2iv'.
-glWindowPos2ivARB
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glWindowPos2ivARB v1 = liftIO $ dyn43 ptr_glWindowPos2ivARB v1
-
-{-# NOINLINE ptr_glWindowPos2ivARB #-}
-ptr_glWindowPos2ivARB :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos2ivARB = unsafePerformIO $ getCommand "glWindowPos2ivARB"
-
--- glWindowPos2ivMESA ----------------------------------------------------------
-
--- | This command is an alias for 'glWindowPos2iv'.
-glWindowPos2ivMESA
-  :: MonadIO m
-  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
-  -> m ()
-glWindowPos2ivMESA v1 = liftIO $ dyn43 ptr_glWindowPos2ivMESA v1
-
-{-# NOINLINE ptr_glWindowPos2ivMESA #-}
-ptr_glWindowPos2ivMESA :: FunPtr (Ptr GLint -> IO ())
-ptr_glWindowPos2ivMESA = unsafePerformIO $ getCommand "glWindowPos2ivMESA"
 
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,15 @@
 --------------------------------------------------------------------------------
 
 module Graphics.GL.Functions.F32 (
+  glWindowPos2fv,
+  glWindowPos2fvARB,
+  glWindowPos2fvMESA,
+  glWindowPos2i,
+  glWindowPos2iARB,
+  glWindowPos2iMESA,
+  glWindowPos2iv,
+  glWindowPos2ivARB,
+  glWindowPos2ivMESA,
   glWindowPos2s,
   glWindowPos2sARB,
   glWindowPos2sMESA,
@@ -62,6 +71,126 @@
 import Graphics.GL.Foreign
 import Graphics.GL.Types
 import System.IO.Unsafe ( unsafePerformIO )
+
+-- glWindowPos2fv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos2fv
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glWindowPos2fv v1 = liftIO $ dyn41 ptr_glWindowPos2fv v1
+
+{-# NOINLINE ptr_glWindowPos2fv #-}
+ptr_glWindowPos2fv :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos2fv = unsafePerformIO $ getCommand "glWindowPos2fv"
+
+-- glWindowPos2fvARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2fv'.
+glWindowPos2fvARB
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glWindowPos2fvARB v1 = liftIO $ dyn41 ptr_glWindowPos2fvARB v1
+
+{-# NOINLINE ptr_glWindowPos2fvARB #-}
+ptr_glWindowPos2fvARB :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos2fvARB = unsafePerformIO $ getCommand "glWindowPos2fvARB"
+
+-- glWindowPos2fvMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2fv'.
+glWindowPos2fvMESA
+  :: MonadIO m
+  => Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
+  -> m ()
+glWindowPos2fvMESA v1 = liftIO $ dyn41 ptr_glWindowPos2fvMESA v1
+
+{-# NOINLINE ptr_glWindowPos2fvMESA #-}
+ptr_glWindowPos2fvMESA :: FunPtr (Ptr GLfloat -> IO ())
+ptr_glWindowPos2fvMESA = unsafePerformIO $ getCommand "glWindowPos2fvMESA"
+
+-- glWindowPos2i ---------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>. The vector equivalent of this command is 'glWindowPos2iv'.
+glWindowPos2i
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> m ()
+glWindowPos2i v1 v2 = liftIO $ dyn266 ptr_glWindowPos2i v1 v2
+
+{-# NOINLINE ptr_glWindowPos2i #-}
+ptr_glWindowPos2i :: FunPtr (GLint -> GLint -> IO ())
+ptr_glWindowPos2i = unsafePerformIO $ getCommand "glWindowPos2i"
+
+-- glWindowPos2iARB ------------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2ivARB'. This command is an alias for 'glWindowPos2i'.
+glWindowPos2iARB
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> m ()
+glWindowPos2iARB v1 v2 = liftIO $ dyn266 ptr_glWindowPos2iARB v1 v2
+
+{-# NOINLINE ptr_glWindowPos2iARB #-}
+ptr_glWindowPos2iARB :: FunPtr (GLint -> GLint -> IO ())
+ptr_glWindowPos2iARB = unsafePerformIO $ getCommand "glWindowPos2iARB"
+
+-- glWindowPos2iMESA -----------------------------------------------------------
+
+-- | The vector equivalent of this command is 'glWindowPos2ivMESA'. This command is an alias for 'glWindowPos2i'.
+glWindowPos2iMESA
+  :: MonadIO m
+  => GLint -- ^ @x@ of type @CoordI@.
+  -> GLint -- ^ @y@ of type @CoordI@.
+  -> m ()
+glWindowPos2iMESA v1 v2 = liftIO $ dyn266 ptr_glWindowPos2iMESA v1 v2
+
+{-# NOINLINE ptr_glWindowPos2iMESA #-}
+ptr_glWindowPos2iMESA :: FunPtr (GLint -> GLint -> IO ())
+ptr_glWindowPos2iMESA = unsafePerformIO $ getCommand "glWindowPos2iMESA"
+
+-- glWindowPos2iv --------------------------------------------------------------
+
+-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>.
+glWindowPos2iv
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glWindowPos2iv v1 = liftIO $ dyn43 ptr_glWindowPos2iv v1
+
+{-# NOINLINE ptr_glWindowPos2iv #-}
+ptr_glWindowPos2iv :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos2iv = unsafePerformIO $ getCommand "glWindowPos2iv"
+
+-- glWindowPos2ivARB -----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2iv'.
+glWindowPos2ivARB
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glWindowPos2ivARB v1 = liftIO $ dyn43 ptr_glWindowPos2ivARB v1
+
+{-# NOINLINE ptr_glWindowPos2ivARB #-}
+ptr_glWindowPos2ivARB :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos2ivARB = unsafePerformIO $ getCommand "glWindowPos2ivARB"
+
+-- glWindowPos2ivMESA ----------------------------------------------------------
+
+-- | This command is an alias for 'glWindowPos2iv'.
+glWindowPos2ivMESA
+  :: MonadIO m
+  => Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
+  -> m ()
+glWindowPos2ivMESA v1 = liftIO $ dyn43 ptr_glWindowPos2ivMESA v1
+
+{-# NOINLINE ptr_glWindowPos2ivMESA #-}
+ptr_glWindowPos2ivMESA :: FunPtr (Ptr GLint -> IO ())
+ptr_glWindowPos2ivMESA = unsafePerformIO $ getCommand "glWindowPos2ivMESA"
 
 -- glWindowPos2s ---------------------------------------------------------------
 
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
@@ -5819,6 +5819,8 @@
 
 pattern GL_MAX_VIEWPORTS_NV = 0x825B :: GLenum
 
+pattern GL_MAX_VIEWPORTS_OES = 0x825B :: GLenum
+
 pattern GL_MAX_VIEWPORT_DIMS = 0x0D3A :: GLenum
 
 pattern GL_MAX_VIEWS_OVR = 0x9631 :: GLenum
@@ -11111,6 +11113,8 @@
 
 pattern GL_VIEWPORT_BOUNDS_RANGE_NV = 0x825D :: GLenum
 
+pattern GL_VIEWPORT_BOUNDS_RANGE_OES = 0x825D :: GLenum
+
 pattern GL_VIEWPORT_COMMAND_NV = 0x0010 :: GLenum
 
 pattern GL_VIEWPORT_INDEX_PROVOKING_VERTEX = 0x825F :: GLenum
@@ -11119,6 +11123,8 @@
 
 pattern GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV = 0x825F :: GLenum
 
+pattern GL_VIEWPORT_INDEX_PROVOKING_VERTEX_OES = 0x825F :: GLenum
+
 pattern GL_VIEWPORT_POSITION_W_SCALE_NV = 0x937C :: GLenum
 
 pattern GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV = 0x937D :: GLenum
@@ -11130,6 +11136,8 @@
 pattern GL_VIEWPORT_SUBPIXEL_BITS_EXT = 0x825C :: GLenum
 
 pattern GL_VIEWPORT_SUBPIXEL_BITS_NV = 0x825C :: GLenum
+
+pattern GL_VIEWPORT_SUBPIXEL_BITS_OES = 0x825C :: GLenum
 
 pattern GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV = 0x9357 :: GLenum
 
