glapi: rename GL3.xml to GL3x.xml as it covers all GL 3.x versions
authorBrian Paul <brianp@vmware.com>
Sun, 21 Nov 2010 16:13:59 +0000 (09:13 -0700)
committerBrian Paul <brianp@vmware.com>
Sun, 21 Nov 2010 16:20:43 +0000 (09:20 -0700)
src/mapi/glapi/gen/GL3.xml [deleted file]
src/mapi/glapi/gen/GL3x.xml [new file with mode: 0644]

diff --git a/src/mapi/glapi/gen/GL3.xml b/src/mapi/glapi/gen/GL3.xml
deleted file mode 100644 (file)
index 0d8d935..0000000
+++ /dev/null
@@ -1,581 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="3.0">
-
-  <enum name="COMPARE_REF_TO_TEXTURE"           value="0x884E"/>
-  <enum name="CLIP_DISTANCE0"                   value="0x3000"/>
-  <enum name="CLIP_DISTANCE1"                   value="0x3001"/>
-  <enum name="CLIP_DISTANCE2"                   value="0x3002"/>
-  <enum name="CLIP_DISTANCE3"                   value="0x3003"/>
-  <enum name="CLIP_DISTANCE4"                   value="0x3004"/>
-  <enum name="CLIP_DISTANCE5"                   value="0x3005"/>
-  <enum name="CLIP_DISTANCE6"                   value="0x3006"/>
-  <enum name="CLIP_DISTANCE7"                   value="0x3007"/>
-  <enum name="MAX_CLIP_DISTANCES"               value="0x0D32"/>
-  <enum name="MAJOR_VERSION"                    value="0x821B"/>
-  <enum name="MINOR_VERSION"                    value="0x821C"/>
-  <enum name="NUM_EXTENSIONS"                   value="0x821D"/>
-  <enum name="CONTEXT_FLAGS"                    value="0x821E"/>
-  <enum name="DEPTH_BUFFER"                     value="0x8223"/>
-  <enum name="STENCIL_BUFFER"                   value="0x8224"/>
-  <enum name="COMPRESSED_RED"                   value="0x8225"/>
-  <enum name="COMPRESSED_RG"                    value="0x8226"/>
-  <enum name="CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT"  value="0x0001"/>
-  <enum name="RGBA32F"                          value="0x8814"/>
-  <enum name="RGB32F"                           value="0x8815"/>
-  <enum name="RGBA16F"                          value="0x881A"/>
-  <enum name="RGB16F"                           value="0x881B"/>
-  <enum name="VERTEX_ATTRIB_ARRAY_INTEGER"      value="0x88FD"/>
-  <enum name="MAX_ARRAY_TEXTURE_LAYERS"         value="0x88FF"/>
-  <enum name="MIN_PROGRAM_TEXEL_OFFSET"         value="0x8904"/>
-  <enum name="MAX_PROGRAM_TEXEL_OFFSET"         value="0x8905"/>
-  <enum name="CLAMP_READ_COLOR"                 value="0x891C"/>
-  <enum name="FIXED_ONLY"                       value="0x891D"/>
-  <enum name="MAX_VARYING_COMPONENTS"           value="0x8B4B"/>
-  <enum name="TEXTURE_1D_ARRAY"                 value="0x8C18"/>
-  <enum name="PROXY_TEXTURE_1D_ARRAY"           value="0x8C19"/>
-  <enum name="TEXTURE_2D_ARRAY"                 value="0x8C1A"/>
-  <enum name="PROXY_TEXTURE_2D_ARRAY"           value="0x8C1B"/>
-  <enum name="TEXTURE_BINDING_1D_ARRAY"         value="0x8C1C"/>
-  <enum name="TEXTURE_BINDING_2D_ARRAY"         value="0x8C1D"/>
-  <enum name="R11F_G11F_B10F"                   value="0x8C3A"/>
-  <enum name="UNSIGNED_INT_10F_11F_11F_REV"     value="0x8C3B"/>
-  <enum name="RGB9_E5"                          value="0x8C3D"/>
-  <enum name="UNSIGNED_INT_5_9_9_9_REV"         value="0x8C3E"/>
-  <enum name="TEXTURE_SHARED_SIZE"              value="0x8C3F"/>
-  <enum name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"  value="0x8C76"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_MODE"   value="0x8C7F"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"  value="0x8C80"/>
-  <enum name="TRANSFORM_FEEDBACK_VARYINGS"      value="0x8C83"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_START"  value="0x8C84"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_SIZE"   value="0x8C85"/>
-  <enum name="PRIMITIVES_GENERATED"             value="0x8C87"/>
-  <enum name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"  value="0x8C88"/>
-  <enum name="RASTERIZER_DISCARD"               value="0x8C89"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"  value="0x8C8A"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"  value="0x8C8B"/>
-  <enum name="INTERLEAVED_ATTRIBS"              value="0x8C8C"/>
-  <enum name="SEPARATE_ATTRIBS"                 value="0x8C8D"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER"        value="0x8C8E"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_BINDING"  value="0x8C8F"/>
-  <enum name="RGBA32UI"                         value="0x8D70"/>
-  <enum name="RGB32UI"                          value="0x8D71"/>
-  <enum name="RGBA16UI"                         value="0x8D76"/>
-  <enum name="RGB16UI"                          value="0x8D77"/>
-  <enum name="RGBA8UI"                          value="0x8D7C"/>
-  <enum name="RGB8UI"                           value="0x8D7D"/>
-  <enum name="RGBA32I"                          value="0x8D82"/>
-  <enum name="RGB32I"                           value="0x8D83"/>
-  <enum name="RGBA16I"                          value="0x8D88"/>
-  <enum name="RGB16I"                           value="0x8D89"/>
-  <enum name="RGBA8I"                           value="0x8D8E"/>
-  <enum name="RGB8I"                            value="0x8D8F"/>
-  <enum name="RED_INTEGER"                      value="0x8D94"/>
-  <enum name="GREEN_INTEGER"                    value="0x8D95"/>
-  <enum name="BLUE_INTEGER"                     value="0x8D96"/>
-  <enum name="RGB_INTEGER"                      value="0x8D98"/>
-  <enum name="RGBA_INTEGER"                     value="0x8D99"/>
-  <enum name="BGR_INTEGER"                      value="0x8D9A"/>
-  <enum name="BGRA_INTEGER"                     value="0x8D9B"/>
-  <enum name="SAMPLER_1D_ARRAY"                 value="0x8DC0"/>
-  <enum name="SAMPLER_2D_ARRAY"                 value="0x8DC1"/>
-  <enum name="SAMPLER_1D_ARRAY_SHADOW"          value="0x8DC3"/>
-  <enum name="SAMPLER_2D_ARRAY_SHADOW"          value="0x8DC4"/>
-  <enum name="SAMPLER_CUBE_SHADOW"              value="0x8DC5"/>
-  <enum name="UNSIGNED_INT_VEC2"                value="0x8DC6"/>
-  <enum name="UNSIGNED_INT_VEC3"                value="0x8DC7"/>
-  <enum name="UNSIGNED_INT_VEC4"                value="0x8DC8"/>
-  <enum name="INT_SAMPLER_1D"                   value="0x8DC9"/>
-  <enum name="INT_SAMPLER_2D"                   value="0x8DCA"/>
-  <enum name="INT_SAMPLER_3D"                   value="0x8DCB"/>
-  <enum name="INT_SAMPLER_CUBE"                 value="0x8DCC"/>
-  <enum name="INT_SAMPLER_1D_ARRAY"             value="0x8DCE"/>
-  <enum name="INT_SAMPLER_2D_ARRAY"             value="0x8DCF"/>
-  <enum name="UNSIGNED_INT_SAMPLER_1D"          value="0x8DD1"/>
-  <enum name="UNSIGNED_INT_SAMPLER_2D"          value="0x8DD2"/>
-  <enum name="UNSIGNED_INT_SAMPLER_3D"          value="0x8DD3"/>
-  <enum name="UNSIGNED_INT_SAMPLER_CUBE"        value="0x8DD4"/>
-  <enum name="UNSIGNED_INT_SAMPLER_1D_ARRAY"    value="0x8DD6"/>
-  <enum name="UNSIGNED_INT_SAMPLER_2D_ARRAY"    value="0x8DD7"/>
-  <enum name="QUERY_WAIT"                       value="0x8E13"/>
-  <enum name="QUERY_NO_WAIT"                    value="0x8E14"/>
-  <enum name="QUERY_BY_REGION_WAIT"             value="0x8E15"/>
-  <enum name="QUERY_BY_REGION_NO_WAIT"          value="0x8E16"/>
-  <enum name="BUFFER_ACCESS_FLAGS"              value="0x911F"/>
-  <enum name="BUFFER_MAP_LENGTH"                value="0x9120"/>
-  <enum name="BUFFER_MAP_OFFSET"                value="0x9121"/>
-
-  <function name="ClearBufferiv" offset="assign">
-    <param name="buffer" type="GLenum"/>
-    <param name="drawbuffer" type="GLint"/>
-    <param name="value" type="const GLint *"/>
-  </function>
-
-  <function name="ClearBufferuiv" offset="assign">
-    <param name="buffer" type="GLenum"/>
-    <param name="drawbuffer" type="GLint"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="ClearBufferfv" offset="assign">
-    <param name="buffer" type="GLenum"/>
-    <param name="drawbuffer" type="GLint"/>
-    <param name="value" type="const GLfloat *"/>
-  </function>
-
-  <function name="ClearBufferfi" offset="assign">
-    <param name="buffer" type="GLenum"/>
-    <param name="drawbuffer" type="GLint"/>
-    <param name="depth" type="const GLfloat"/>
-    <param name="stencil" type="const GLint"/>
-  </function>
-
-  <function name="GetStringi" offset="assign">
-    <param name="name" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-      <return type="const GLubyte *"/>
-  </function>
-
-  <function name="IsEnabledi" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-      <return type="GLboolean"/>
-  </function>
-
-  <function name="GetFragDataLocation" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="name" type="const GLchar *"/>
-      <return type="GLint"/>
-  </function>
-
-  <function name="BindFragDataLocation" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="color" type="GLuint"/>
-    <param name="name" type="const GLchar *"/>
-  </function>
-
-  <function name="ColorMaski" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="r" type="GLboolean"/>
-    <param name="g" type="GLboolean"/>
-    <param name="b" type="GLboolean"/>
-    <param name="a" type="GLboolean"/>
-  </function>
-
-  <function name="GetBooleani_v" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="value" type="GLboolean *"/>
-  </function>
-
-  <function name="GetIntegeri_v" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="value" type="GLint *"/>
-  </function>
-
-  <function name="Enablei" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-  </function>
-
-  <function name="Disablei" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-  </function>
-
-  <function name="BeginTransformFeedback" offset="assign">
-    <param name="mode" type="GLenum"/>
-  </function>
-
-  <function name="EndTransformFeedback" offset="assign">
-  </function>
-
-  <function name="BindBufferRange" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-    <param name="offset" type="GLintptr"/>
-    <param name="size" type="GLsizeiptr"/>
-  </function>
-
-  <function name="BindBufferBase" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-  </function>
-
-  <function name="TransformFeedbackVaryings" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="varyings" type="const GLchar* *"/>
-    <param name="bufferMode" type="GLenum"/>
-  </function>
-
-  <function name="GetTransformFeedbackVarying" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="index" type="GLuint"/>
-    <param name="bufSize" type="GLsizei"/>
-    <param name="length" type="GLsizei *"/>
-    <param name="size" type="GLsizei *"/>
-    <param name="type" type="GLenum *"/>
-    <param name="name" type="GLchar *"/>
-  </function>
-
-  <function name="ClampColor" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="clamp" type="GLenum"/>
-  </function>
-
-  <function name="BeginConditionalRender" offset="assign">
-    <param name="id" type="GLuint"/>
-    <param name="mode" type="GLenum"/>
-  </function>
-
-  <function name="EndConditionalRender" offset="assign">
-  </function>
-
-  <function name="VertexAttribIPointer" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="size" type="GLint"/>
-    <param name="type" type="GLenum"/>
-    <param name="stride" type="GLsizei"/>
-    <param name="pointer" type="const GLvoid *"/>
-  </function>
-
-  <function name="GetVertexAttribIiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="pname" type="GLenum"/>
-    <param name="params" type="GLint *"/>
-  </function>
-
-  <function name="GetVertexAttribIuiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="pname" type="GLenum"/>
-    <param name="params" type="GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI1i" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLint"/>
-  </function>
-
-  <function name="VertexAttribI2i" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLint"/>
-    <param name="y" type="GLint"/>
-  </function>
-
-  <function name="VertexAttribI3i" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLint"/>
-    <param name="y" type="GLint"/>
-    <param name="z" type="GLint"/>
-  </function>
-
-  <function name="VertexAttribI4i" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLint"/>
-    <param name="y" type="GLint"/>
-    <param name="z" type="GLint"/>
-    <param name="w" type="GLint"/>
-  </function>
-
-  <function name="VertexAttribI1ui" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLuint"/>
-  </function>
-
-  <function name="VertexAttribI2ui" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-  </function>
-
-  <function name="VertexAttribI3ui" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-    <param name="z" type="GLuint"/>
-  </function>
-
-  <function name="VertexAttribI4ui" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-    <param name="z" type="GLuint"/>
-    <param name="w" type="GLuint"/>
-  </function>
-
-  <function name="VertexAttribI1iv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLint *"/>
-  </function>
-
-  <function name="VertexAttribI2iv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLint *"/>
-  </function>
-
-  <function name="VertexAttribI3iv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLint *"/>
-  </function>
-
-  <function name="VertexAttribI4iv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLint *"/>
-  </function>
-
-  <function name="VertexAttribI1uiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI2uiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI3uiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI4uiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI4bv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLbyte *"/>
-  </function>
-
-  <function name="VertexAttribI4sv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLshort *"/>
-  </function>
-
-  <function name="VertexAttribI4ubv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLubyte *"/>
-  </function>
-
-  <function name="VertexAttribI4usv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLushort *"/>
-  </function>
-
-  <function name="GetUniformuiv" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="location" type="GLint"/>
-    <param name="params" type="GLuint *"/>
-  </function>
-
-  <function name="Uniform1ui" offset="assign">
-    <param name="locatoin" type="GLint"/>
-    <param name="x" type="GLuint"/>
-  </function>
-
-  <function name="Uniform2ui" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-  </function>
-
-  <function name="Uniform3ui" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-    <param name="z" type="GLuint"/>
-  </function>
-
-  <function name="Uniform4ui" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-    <param name="z" type="GLuint"/>
-    <param name="w" type="GLuint"/>
-  </function>
-
-  <function name="Uniform1uiv" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="Uniform2uiv" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="Uniform3uiv" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="Uniform4uiv" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="TexParameterIiv" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="const GLint *"/>
-  </function>
-
-  <function name="TexParameterIuiv" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="GetTexParameterIiv" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="GLint *"/>
-  </function>
-
-  <function name="GetTexParameterIuiv" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="GLuint *"/>
-  </function>
-
-</category>
-
-
-<category name="3.1">
-
-  <enum name="SAMPLER_2D_RECT"                value="0x8B63"/>
-  <enum name="SAMPLER_2D_RECT_SHADOW"         value="0x8B64"/>
-  <enum name="SAMPLER_BUFFER"                 value="0x8DC2"/>
-  <enum name="INT_SAMPLER_2D_RECT"            value="0x8DCD"/>
-  <enum name="INT_SAMPLER_BUFFER"             value="0x8DD0"/>
-  <enum name="UNSIGNED_INT_SAMPLER_2D_RECT"   value="0x8DD5"/>
-  <enum name="UNSIGNED_INT_SAMPLER_BUFFER"    value="0x8DD8"/>
-  <enum name="TEXTURE_BUFFER"                 value="0x8C2A"/>
-  <enum name="MAX_TEXTURE_BUFFER_SIZE"        value="0x8C2B"/>
-  <enum name="TEXTURE_BINDING_BUFFER"         value="0x8C2C"/>
-  <enum name="TEXTURE_BUFFER_DATA_STORE_BINDING" value="0x8C2D"/>
-  <enum name="TEXTURE_BUFFER_FORMAT"          value="0x8C2E"/>
-  <enum name="TEXTURE_RECTANGLE"              value="0x84F5"/>
-  <enum name="TEXTURE_BINDING_RECTANGLE"      value="0x84F6"/>
-  <enum name="PROXY_TEXTURE_RECTANGLE"        value="0x84F7"/>
-  <enum name="MAX_RECTANGLE_TEXTURE_SIZE"     value="0x84F8"/>
-  <enum name="RED_SNORM"                      value="0x8F90"/>
-  <enum name="RG_SNORM"                       value="0x8F91"/>
-  <enum name="RGB_SNORM"                      value="0x8F92"/>
-  <enum name="RGBA_SNORM"                     value="0x8F93"/>
-  <enum name="R8_SNORM"                       value="0x8F94"/>
-  <enum name="RG8_SNORM"                      value="0x8F95"/>
-  <enum name="RGB8_SNORM"                     value="0x8F96"/>
-  <enum name="RGBA8_SNORM"                    value="0x8F97"/>
-  <enum name="R16_SNORM"                      value="0x8F98"/>
-  <enum name="RG16_SNORM"                     value="0x8F99"/>
-  <enum name="RGB16_SNORM"                    value="0x8F9A"/>
-  <enum name="RGBA16_SNORM"                   value="0x8F9B"/>
-  <enum name="SIGNED_NORMALIZED"              value="0x8F9C"/>
-  <enum name="PRIMITIVE_RESTART"              value="0x8F9D"/>
-  <enum name="PRIMITIVE_RESTART_INDEX"        value="0x8F9E"/>
-
-  <function name="DrawArraysInstanced" offset="assign">
-    <param name="mode" type="GLenum"/>
-    <param name="first" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-  <function name="DrawElementsInstanced" offset="assign">
-    <param name="mode" type="GLenum"/>
-    <param name="count" type="GLsizei"/>
-    <param name="type" type="GLenum"/>
-    <param name="indices" type="const GLvoid *"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-  <function name="TexBuffer" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="internalFormat" type="GLenum"/>
-    <param name="buffer" type="GLuint"/>
-  </function>
-
-  <function name="glPrimitiveRestartIndex" offset="assign">
-    <param name="index" type="GLuint"/>
-  </function>
-
-</category>
-
-
-<category name="3.2">
-
-  <enum name="CONTEXT_CORE_PROFILE_BIT"             value="0x00000001"/>
-  <enum name="CONTEXT_COMPATIBILITY_PROFILE_BIT"    value="0x00000002"/>
-  <enum name="LINES_ADJACENCY"                      value="0x000A"/>
-  <enum name="LINE_STRIP_ADJACENCY"                 value="0x000B"/>
-  <enum name="TRIANGLES_ADJACENCY"                  value="0x000C"/>
-  <enum name="TRIANGLE_STRIP_ADJACENCY"             value="0x000D"/>
-  <enum name="PROGRAM_POINT_SIZE"                   value="0x8642"/>
-  <enum name="MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"     value="0x8C29"/>
-  <enum name="FRAMEBUFFER_ATTACHMENT_LAYERED"       value="0x8DA7"/>
-  <enum name="FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS" value="0x8DA8"/>
-  <enum name="GEOMETRY_SHADER"                      value="0x8DD9"/>
-  <enum name="GEOMETRY_VERTICES_OUT"                value="0x8916"/>
-  <enum name="GEOMETRY_INPUT_TYPE"                  value="0x8917"/>
-  <enum name="GEOMETRY_OUTPUT_TYPE"                 value="0x8918"/>
-  <enum name="MAX_GEOMETRY_UNIFORM_COMPONENTS"      value="0x8DDF"/>
-  <enum name="MAX_GEOMETRY_OUTPUT_VERTICES"         value="0x8DE0"/>
-  <enum name="MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS" value="0x8DE1"/>
-  <enum name="MAX_VERTEX_OUTPUT_COMPONENTS"         value="0x9122"/>
-  <enum name="MAX_GEOMETRY_INPUT_COMPONENTS"        value="0x9123"/>
-  <enum name="MAX_GEOMETRY_OUTPUT_COMPONENTS"       value="0x9124"/>
-  <enum name="MAX_FRAGMENT_INPUT_COMPONENTS"        value="0x9125"/>
-  <enum name="CONTEXT_PROFILE_MASK"                 value="0x9126"/>
-
-  <function name="GetInteger64i_v" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="data" type="GLint64 *"/>
-  </function>
-
-  <function name="GetBufferParameteri64v" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="params" type="GLint64 *"/>
-  </function>
-
-  <function name="ProgramParameteri" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="GLint"/>
-  </function>
-
-  <function name="FramebufferTexture" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="attachment" type="GLenum"/>
-    <param name="texture" type="GLuint"/>
-    <param name="level" type="GLint"/>
-  </function>
-
-  <function name="FramebufferTextureFace" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="attachment" type="GLenum"/>
-    <param name="texture" type="GLuint"/>
-    <param name="level" type="GLint"/>
-    <param name="face" type="GLenum"/>
-  </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/GL3x.xml b/src/mapi/glapi/gen/GL3x.xml
new file mode 100644 (file)
index 0000000..0d8d935
--- /dev/null
@@ -0,0 +1,581 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="3.0">
+
+  <enum name="COMPARE_REF_TO_TEXTURE"           value="0x884E"/>
+  <enum name="CLIP_DISTANCE0"                   value="0x3000"/>
+  <enum name="CLIP_DISTANCE1"                   value="0x3001"/>
+  <enum name="CLIP_DISTANCE2"                   value="0x3002"/>
+  <enum name="CLIP_DISTANCE3"                   value="0x3003"/>
+  <enum name="CLIP_DISTANCE4"                   value="0x3004"/>
+  <enum name="CLIP_DISTANCE5"                   value="0x3005"/>
+  <enum name="CLIP_DISTANCE6"                   value="0x3006"/>
+  <enum name="CLIP_DISTANCE7"                   value="0x3007"/>
+  <enum name="MAX_CLIP_DISTANCES"               value="0x0D32"/>
+  <enum name="MAJOR_VERSION"                    value="0x821B"/>
+  <enum name="MINOR_VERSION"                    value="0x821C"/>
+  <enum name="NUM_EXTENSIONS"                   value="0x821D"/>
+  <enum name="CONTEXT_FLAGS"                    value="0x821E"/>
+  <enum name="DEPTH_BUFFER"                     value="0x8223"/>
+  <enum name="STENCIL_BUFFER"                   value="0x8224"/>
+  <enum name="COMPRESSED_RED"                   value="0x8225"/>
+  <enum name="COMPRESSED_RG"                    value="0x8226"/>
+  <enum name="CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT"  value="0x0001"/>
+  <enum name="RGBA32F"                          value="0x8814"/>
+  <enum name="RGB32F"                           value="0x8815"/>
+  <enum name="RGBA16F"                          value="0x881A"/>
+  <enum name="RGB16F"                           value="0x881B"/>
+  <enum name="VERTEX_ATTRIB_ARRAY_INTEGER"      value="0x88FD"/>
+  <enum name="MAX_ARRAY_TEXTURE_LAYERS"         value="0x88FF"/>
+  <enum name="MIN_PROGRAM_TEXEL_OFFSET"         value="0x8904"/>
+  <enum name="MAX_PROGRAM_TEXEL_OFFSET"         value="0x8905"/>
+  <enum name="CLAMP_READ_COLOR"                 value="0x891C"/>
+  <enum name="FIXED_ONLY"                       value="0x891D"/>
+  <enum name="MAX_VARYING_COMPONENTS"           value="0x8B4B"/>
+  <enum name="TEXTURE_1D_ARRAY"                 value="0x8C18"/>
+  <enum name="PROXY_TEXTURE_1D_ARRAY"           value="0x8C19"/>
+  <enum name="TEXTURE_2D_ARRAY"                 value="0x8C1A"/>
+  <enum name="PROXY_TEXTURE_2D_ARRAY"           value="0x8C1B"/>
+  <enum name="TEXTURE_BINDING_1D_ARRAY"         value="0x8C1C"/>
+  <enum name="TEXTURE_BINDING_2D_ARRAY"         value="0x8C1D"/>
+  <enum name="R11F_G11F_B10F"                   value="0x8C3A"/>
+  <enum name="UNSIGNED_INT_10F_11F_11F_REV"     value="0x8C3B"/>
+  <enum name="RGB9_E5"                          value="0x8C3D"/>
+  <enum name="UNSIGNED_INT_5_9_9_9_REV"         value="0x8C3E"/>
+  <enum name="TEXTURE_SHARED_SIZE"              value="0x8C3F"/>
+  <enum name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"  value="0x8C76"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_MODE"   value="0x8C7F"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"  value="0x8C80"/>
+  <enum name="TRANSFORM_FEEDBACK_VARYINGS"      value="0x8C83"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_START"  value="0x8C84"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_SIZE"   value="0x8C85"/>
+  <enum name="PRIMITIVES_GENERATED"             value="0x8C87"/>
+  <enum name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"  value="0x8C88"/>
+  <enum name="RASTERIZER_DISCARD"               value="0x8C89"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"  value="0x8C8A"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"  value="0x8C8B"/>
+  <enum name="INTERLEAVED_ATTRIBS"              value="0x8C8C"/>
+  <enum name="SEPARATE_ATTRIBS"                 value="0x8C8D"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER"        value="0x8C8E"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_BINDING"  value="0x8C8F"/>
+  <enum name="RGBA32UI"                         value="0x8D70"/>
+  <enum name="RGB32UI"                          value="0x8D71"/>
+  <enum name="RGBA16UI"                         value="0x8D76"/>
+  <enum name="RGB16UI"                          value="0x8D77"/>
+  <enum name="RGBA8UI"                          value="0x8D7C"/>
+  <enum name="RGB8UI"                           value="0x8D7D"/>
+  <enum name="RGBA32I"                          value="0x8D82"/>
+  <enum name="RGB32I"                           value="0x8D83"/>
+  <enum name="RGBA16I"                          value="0x8D88"/>
+  <enum name="RGB16I"                           value="0x8D89"/>
+  <enum name="RGBA8I"                           value="0x8D8E"/>
+  <enum name="RGB8I"                            value="0x8D8F"/>
+  <enum name="RED_INTEGER"                      value="0x8D94"/>
+  <enum name="GREEN_INTEGER"                    value="0x8D95"/>
+  <enum name="BLUE_INTEGER"                     value="0x8D96"/>
+  <enum name="RGB_INTEGER"                      value="0x8D98"/>
+  <enum name="RGBA_INTEGER"                     value="0x8D99"/>
+  <enum name="BGR_INTEGER"                      value="0x8D9A"/>
+  <enum name="BGRA_INTEGER"                     value="0x8D9B"/>
+  <enum name="SAMPLER_1D_ARRAY"                 value="0x8DC0"/>
+  <enum name="SAMPLER_2D_ARRAY"                 value="0x8DC1"/>
+  <enum name="SAMPLER_1D_ARRAY_SHADOW"          value="0x8DC3"/>
+  <enum name="SAMPLER_2D_ARRAY_SHADOW"          value="0x8DC4"/>
+  <enum name="SAMPLER_CUBE_SHADOW"              value="0x8DC5"/>
+  <enum name="UNSIGNED_INT_VEC2"                value="0x8DC6"/>
+  <enum name="UNSIGNED_INT_VEC3"                value="0x8DC7"/>
+  <enum name="UNSIGNED_INT_VEC4"                value="0x8DC8"/>
+  <enum name="INT_SAMPLER_1D"                   value="0x8DC9"/>
+  <enum name="INT_SAMPLER_2D"                   value="0x8DCA"/>
+  <enum name="INT_SAMPLER_3D"                   value="0x8DCB"/>
+  <enum name="INT_SAMPLER_CUBE"                 value="0x8DCC"/>
+  <enum name="INT_SAMPLER_1D_ARRAY"             value="0x8DCE"/>
+  <enum name="INT_SAMPLER_2D_ARRAY"             value="0x8DCF"/>
+  <enum name="UNSIGNED_INT_SAMPLER_1D"          value="0x8DD1"/>
+  <enum name="UNSIGNED_INT_SAMPLER_2D"          value="0x8DD2"/>
+  <enum name="UNSIGNED_INT_SAMPLER_3D"          value="0x8DD3"/>
+  <enum name="UNSIGNED_INT_SAMPLER_CUBE"        value="0x8DD4"/>
+  <enum name="UNSIGNED_INT_SAMPLER_1D_ARRAY"    value="0x8DD6"/>
+  <enum name="UNSIGNED_INT_SAMPLER_2D_ARRAY"    value="0x8DD7"/>
+  <enum name="QUERY_WAIT"                       value="0x8E13"/>
+  <enum name="QUERY_NO_WAIT"                    value="0x8E14"/>
+  <enum name="QUERY_BY_REGION_WAIT"             value="0x8E15"/>
+  <enum name="QUERY_BY_REGION_NO_WAIT"          value="0x8E16"/>
+  <enum name="BUFFER_ACCESS_FLAGS"              value="0x911F"/>
+  <enum name="BUFFER_MAP_LENGTH"                value="0x9120"/>
+  <enum name="BUFFER_MAP_OFFSET"                value="0x9121"/>
+
+  <function name="ClearBufferiv" offset="assign">
+    <param name="buffer" type="GLenum"/>
+    <param name="drawbuffer" type="GLint"/>
+    <param name="value" type="const GLint *"/>
+  </function>
+
+  <function name="ClearBufferuiv" offset="assign">
+    <param name="buffer" type="GLenum"/>
+    <param name="drawbuffer" type="GLint"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="ClearBufferfv" offset="assign">
+    <param name="buffer" type="GLenum"/>
+    <param name="drawbuffer" type="GLint"/>
+    <param name="value" type="const GLfloat *"/>
+  </function>
+
+  <function name="ClearBufferfi" offset="assign">
+    <param name="buffer" type="GLenum"/>
+    <param name="drawbuffer" type="GLint"/>
+    <param name="depth" type="const GLfloat"/>
+    <param name="stencil" type="const GLint"/>
+  </function>
+
+  <function name="GetStringi" offset="assign">
+    <param name="name" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+      <return type="const GLubyte *"/>
+  </function>
+
+  <function name="IsEnabledi" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+      <return type="GLboolean"/>
+  </function>
+
+  <function name="GetFragDataLocation" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="name" type="const GLchar *"/>
+      <return type="GLint"/>
+  </function>
+
+  <function name="BindFragDataLocation" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="color" type="GLuint"/>
+    <param name="name" type="const GLchar *"/>
+  </function>
+
+  <function name="ColorMaski" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="r" type="GLboolean"/>
+    <param name="g" type="GLboolean"/>
+    <param name="b" type="GLboolean"/>
+    <param name="a" type="GLboolean"/>
+  </function>
+
+  <function name="GetBooleani_v" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="value" type="GLboolean *"/>
+  </function>
+
+  <function name="GetIntegeri_v" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="value" type="GLint *"/>
+  </function>
+
+  <function name="Enablei" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+  </function>
+
+  <function name="Disablei" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+  </function>
+
+  <function name="BeginTransformFeedback" offset="assign">
+    <param name="mode" type="GLenum"/>
+  </function>
+
+  <function name="EndTransformFeedback" offset="assign">
+  </function>
+
+  <function name="BindBufferRange" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+    <param name="offset" type="GLintptr"/>
+    <param name="size" type="GLsizeiptr"/>
+  </function>
+
+  <function name="BindBufferBase" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+  </function>
+
+  <function name="TransformFeedbackVaryings" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="varyings" type="const GLchar* *"/>
+    <param name="bufferMode" type="GLenum"/>
+  </function>
+
+  <function name="GetTransformFeedbackVarying" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="index" type="GLuint"/>
+    <param name="bufSize" type="GLsizei"/>
+    <param name="length" type="GLsizei *"/>
+    <param name="size" type="GLsizei *"/>
+    <param name="type" type="GLenum *"/>
+    <param name="name" type="GLchar *"/>
+  </function>
+
+  <function name="ClampColor" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="clamp" type="GLenum"/>
+  </function>
+
+  <function name="BeginConditionalRender" offset="assign">
+    <param name="id" type="GLuint"/>
+    <param name="mode" type="GLenum"/>
+  </function>
+
+  <function name="EndConditionalRender" offset="assign">
+  </function>
+
+  <function name="VertexAttribIPointer" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="size" type="GLint"/>
+    <param name="type" type="GLenum"/>
+    <param name="stride" type="GLsizei"/>
+    <param name="pointer" type="const GLvoid *"/>
+  </function>
+
+  <function name="GetVertexAttribIiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="pname" type="GLenum"/>
+    <param name="params" type="GLint *"/>
+  </function>
+
+  <function name="GetVertexAttribIuiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="pname" type="GLenum"/>
+    <param name="params" type="GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI1i" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLint"/>
+  </function>
+
+  <function name="VertexAttribI2i" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLint"/>
+    <param name="y" type="GLint"/>
+  </function>
+
+  <function name="VertexAttribI3i" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLint"/>
+    <param name="y" type="GLint"/>
+    <param name="z" type="GLint"/>
+  </function>
+
+  <function name="VertexAttribI4i" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLint"/>
+    <param name="y" type="GLint"/>
+    <param name="z" type="GLint"/>
+    <param name="w" type="GLint"/>
+  </function>
+
+  <function name="VertexAttribI1ui" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLuint"/>
+  </function>
+
+  <function name="VertexAttribI2ui" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+  </function>
+
+  <function name="VertexAttribI3ui" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+    <param name="z" type="GLuint"/>
+  </function>
+
+  <function name="VertexAttribI4ui" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+    <param name="z" type="GLuint"/>
+    <param name="w" type="GLuint"/>
+  </function>
+
+  <function name="VertexAttribI1iv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLint *"/>
+  </function>
+
+  <function name="VertexAttribI2iv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLint *"/>
+  </function>
+
+  <function name="VertexAttribI3iv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLint *"/>
+  </function>
+
+  <function name="VertexAttribI4iv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLint *"/>
+  </function>
+
+  <function name="VertexAttribI1uiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI2uiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI3uiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI4uiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI4bv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLbyte *"/>
+  </function>
+
+  <function name="VertexAttribI4sv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLshort *"/>
+  </function>
+
+  <function name="VertexAttribI4ubv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLubyte *"/>
+  </function>
+
+  <function name="VertexAttribI4usv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLushort *"/>
+  </function>
+
+  <function name="GetUniformuiv" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="location" type="GLint"/>
+    <param name="params" type="GLuint *"/>
+  </function>
+
+  <function name="Uniform1ui" offset="assign">
+    <param name="locatoin" type="GLint"/>
+    <param name="x" type="GLuint"/>
+  </function>
+
+  <function name="Uniform2ui" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+  </function>
+
+  <function name="Uniform3ui" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+    <param name="z" type="GLuint"/>
+  </function>
+
+  <function name="Uniform4ui" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+    <param name="z" type="GLuint"/>
+    <param name="w" type="GLuint"/>
+  </function>
+
+  <function name="Uniform1uiv" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="Uniform2uiv" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="Uniform3uiv" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="Uniform4uiv" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="TexParameterIiv" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="const GLint *"/>
+  </function>
+
+  <function name="TexParameterIuiv" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="GetTexParameterIiv" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="GLint *"/>
+  </function>
+
+  <function name="GetTexParameterIuiv" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="GLuint *"/>
+  </function>
+
+</category>
+
+
+<category name="3.1">
+
+  <enum name="SAMPLER_2D_RECT"                value="0x8B63"/>
+  <enum name="SAMPLER_2D_RECT_SHADOW"         value="0x8B64"/>
+  <enum name="SAMPLER_BUFFER"                 value="0x8DC2"/>
+  <enum name="INT_SAMPLER_2D_RECT"            value="0x8DCD"/>
+  <enum name="INT_SAMPLER_BUFFER"             value="0x8DD0"/>
+  <enum name="UNSIGNED_INT_SAMPLER_2D_RECT"   value="0x8DD5"/>
+  <enum name="UNSIGNED_INT_SAMPLER_BUFFER"    value="0x8DD8"/>
+  <enum name="TEXTURE_BUFFER"                 value="0x8C2A"/>
+  <enum name="MAX_TEXTURE_BUFFER_SIZE"        value="0x8C2B"/>
+  <enum name="TEXTURE_BINDING_BUFFER"         value="0x8C2C"/>
+  <enum name="TEXTURE_BUFFER_DATA_STORE_BINDING" value="0x8C2D"/>
+  <enum name="TEXTURE_BUFFER_FORMAT"          value="0x8C2E"/>
+  <enum name="TEXTURE_RECTANGLE"              value="0x84F5"/>
+  <enum name="TEXTURE_BINDING_RECTANGLE"      value="0x84F6"/>
+  <enum name="PROXY_TEXTURE_RECTANGLE"        value="0x84F7"/>
+  <enum name="MAX_RECTANGLE_TEXTURE_SIZE"     value="0x84F8"/>
+  <enum name="RED_SNORM"                      value="0x8F90"/>
+  <enum name="RG_SNORM"                       value="0x8F91"/>
+  <enum name="RGB_SNORM"                      value="0x8F92"/>
+  <enum name="RGBA_SNORM"                     value="0x8F93"/>
+  <enum name="R8_SNORM"                       value="0x8F94"/>
+  <enum name="RG8_SNORM"                      value="0x8F95"/>
+  <enum name="RGB8_SNORM"                     value="0x8F96"/>
+  <enum name="RGBA8_SNORM"                    value="0x8F97"/>
+  <enum name="R16_SNORM"                      value="0x8F98"/>
+  <enum name="RG16_SNORM"                     value="0x8F99"/>
+  <enum name="RGB16_SNORM"                    value="0x8F9A"/>
+  <enum name="RGBA16_SNORM"                   value="0x8F9B"/>
+  <enum name="SIGNED_NORMALIZED"              value="0x8F9C"/>
+  <enum name="PRIMITIVE_RESTART"              value="0x8F9D"/>
+  <enum name="PRIMITIVE_RESTART_INDEX"        value="0x8F9E"/>
+
+  <function name="DrawArraysInstanced" offset="assign">
+    <param name="mode" type="GLenum"/>
+    <param name="first" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+  <function name="DrawElementsInstanced" offset="assign">
+    <param name="mode" type="GLenum"/>
+    <param name="count" type="GLsizei"/>
+    <param name="type" type="GLenum"/>
+    <param name="indices" type="const GLvoid *"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+  <function name="TexBuffer" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="internalFormat" type="GLenum"/>
+    <param name="buffer" type="GLuint"/>
+  </function>
+
+  <function name="glPrimitiveRestartIndex" offset="assign">
+    <param name="index" type="GLuint"/>
+  </function>
+
+</category>
+
+
+<category name="3.2">
+
+  <enum name="CONTEXT_CORE_PROFILE_BIT"             value="0x00000001"/>
+  <enum name="CONTEXT_COMPATIBILITY_PROFILE_BIT"    value="0x00000002"/>
+  <enum name="LINES_ADJACENCY"                      value="0x000A"/>
+  <enum name="LINE_STRIP_ADJACENCY"                 value="0x000B"/>
+  <enum name="TRIANGLES_ADJACENCY"                  value="0x000C"/>
+  <enum name="TRIANGLE_STRIP_ADJACENCY"             value="0x000D"/>
+  <enum name="PROGRAM_POINT_SIZE"                   value="0x8642"/>
+  <enum name="MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"     value="0x8C29"/>
+  <enum name="FRAMEBUFFER_ATTACHMENT_LAYERED"       value="0x8DA7"/>
+  <enum name="FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS" value="0x8DA8"/>
+  <enum name="GEOMETRY_SHADER"                      value="0x8DD9"/>
+  <enum name="GEOMETRY_VERTICES_OUT"                value="0x8916"/>
+  <enum name="GEOMETRY_INPUT_TYPE"                  value="0x8917"/>
+  <enum name="GEOMETRY_OUTPUT_TYPE"                 value="0x8918"/>
+  <enum name="MAX_GEOMETRY_UNIFORM_COMPONENTS"      value="0x8DDF"/>
+  <enum name="MAX_GEOMETRY_OUTPUT_VERTICES"         value="0x8DE0"/>
+  <enum name="MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS" value="0x8DE1"/>
+  <enum name="MAX_VERTEX_OUTPUT_COMPONENTS"         value="0x9122"/>
+  <enum name="MAX_GEOMETRY_INPUT_COMPONENTS"        value="0x9123"/>
+  <enum name="MAX_GEOMETRY_OUTPUT_COMPONENTS"       value="0x9124"/>
+  <enum name="MAX_FRAGMENT_INPUT_COMPONENTS"        value="0x9125"/>
+  <enum name="CONTEXT_PROFILE_MASK"                 value="0x9126"/>
+
+  <function name="GetInteger64i_v" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="data" type="GLint64 *"/>
+  </function>
+
+  <function name="GetBufferParameteri64v" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="params" type="GLint64 *"/>
+  </function>
+
+  <function name="ProgramParameteri" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="GLint"/>
+  </function>
+
+  <function name="FramebufferTexture" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="attachment" type="GLenum"/>
+    <param name="texture" type="GLuint"/>
+    <param name="level" type="GLint"/>
+  </function>
+
+  <function name="FramebufferTextureFace" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="attachment" type="GLenum"/>
+    <param name="texture" type="GLuint"/>
+    <param name="level" type="GLint"/>
+    <param name="face" type="GLenum"/>
+  </function>
+
+</category>
+
+</OpenGLAPI>