<type name="DEBUGPROCARB" size="4" pointer="true"/>
<type name="DEBUGPROC" size="4" pointer="true"/>
- <function name="NewList" deprecated="3.1">
+ <function name="NewList" deprecated="3.1" marshal_fail="true">
<param name="list" type="GLuint"/>
<param name="mode" type="GLenum"/>
<glx sop="101"/>
<glx rop="3"/>
</function>
- <function name="Begin" deprecated="3.1" exec="dynamic">
+ <function name="Begin" deprecated="3.1" exec="dynamic" marshal_fail="true">
<param name="mode" type="GLenum"/>
<glx rop="4"/>
</function>
<glx rop="78"/>
</function>
- <function name="CullFace" es1="1.0" es2="2.0">
+ <function name="CullFace" es1="1.0" es2="2.0" no_error="true">
<param name="mode" type="GLenum"/>
<glx rop="79"/>
</function>
<glx rop="83"/>
</function>
- <function name="FrontFace" es1="1.0" es2="2.0">
+ <function name="FrontFace" es1="1.0" es2="2.0" no_error="true">
<param name="mode" type="GLenum"/>
<glx rop="84"/>
</function>
<glx rop="102"/>
</function>
- <function name="Scissor" es1="1.0" es2="2.0">
+ <function name="Scissor" es1="1.0" es2="2.0" no_error="true">
<param name="x" type="GLint"/>
<param name="y" type="GLint"/>
<param name="width" type="GLsizei"/>
<glx rop="108"/>
</function>
- <function name="TexImage1D">
+ <function name="TexImage1D" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="internalformat" type="GLint"/>
<glx rop="109" large="true"/>
</function>
- <function name="TexImage2D" es1="1.0" es2="2.0">
+ <function name="TexImage2D" es1="1.0" es2="2.0" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="internalformat" type="GLint"/>
<glx rop="125"/>
</function>
- <function name="DrawBuffer">
+ <function name="DrawBuffer" no_error="true">
<param name="mode" type="GLenum"/>
<glx rop="126"/>
</function>
- <function name="Clear" es1="1.0" es2="2.0">
+ <function name="Clear" es1="1.0" es2="2.0" no_error="true">
<param name="mask" type="GLbitfield"/>
<glx rop="127"/>
</function>
<glx rop="138" handcode="client"/>
</function>
- <function name="Enable" es1="1.0" es2="2.0">
+ <function name="Enable" es1="1.0" es2="2.0" marshal="custom">
<param name="cap" type="GLenum"/>
<glx rop="139" handcode="client"/>
</function>
- <function name="Finish" es1="1.0" es2="2.0">
+ <function name="Finish" es1="1.0" es2="2.0" marshal="sync">
<glx sop="108" handcode="true"/>
</function>
- <function name="Flush" es1="1.0" es2="2.0">
+ <!-- TODO: Flush is marshalled synchronously as a temporary hack
+ since we don't yet have a hook into SwapBuffers.
+
+ NOTE: when we remove this hack, we'll still have to handle Flush
+ specially to ensure that it causes all previous commands to get
+ delivered to the server thread.
+ -->
+ <function name="Flush" es1="1.0" es2="2.0" marshal="custom">
<glx sop="142" handcode="true"/>
</function>
<glx rop="159"/>
</function>
- <function name="BlendFunc" es1="1.0" es2="2.0">
+ <function name="BlendFunc" es1="1.0" es2="2.0" no_error="true">
<param name="sfactor" type="GLenum"/>
<param name="dfactor" type="GLenum"/>
<glx rop="160"/>
</function>
- <function name="LogicOp" es1="1.0">
+ <function name="LogicOp" es1="1.0" no_error="true">
<param name="opcode" type="GLenum"/>
<glx rop="161"/>
</function>
- <function name="StencilFunc" es1="1.0" es2="2.0">
+ <function name="StencilFunc" es1="1.0" es2="2.0" no_error="true">
<param name="func" type="GLenum"/>
<param name="ref" type="GLint"/>
<param name="mask" type="GLuint"/>
<glx rop="162"/>
</function>
- <function name="StencilOp" es1="1.0" es2="2.0">
+ <function name="StencilOp" es1="1.0" es2="2.0" no_error="true">
<param name="fail" type="GLenum"/>
<param name="zfail" type="GLenum"/>
<param name="zpass" type="GLenum"/>
<glx rop="163"/>
</function>
- <function name="DepthFunc" es1="1.0" es2="2.0">
+ <function name="DepthFunc" es1="1.0" es2="2.0" no_error="true">
<param name="func" type="GLenum"/>
<glx rop="164"/>
</function>
<glx rop="167"/>
</function>
- <function name="PixelStoref">
+ <function name="PixelStoref" no_error="true">
<param name="pname" type="GLenum"/>
<param name="param" type="GLfloat"/>
<glx sop="109" handcode="client"/>
</function>
- <function name="PixelStorei" es1="1.0" es2="2.0">
+ <function name="PixelStorei" es1="1.0" es2="2.0" no_error="true">
<param name="pname" type="GLenum"/>
<param name="param" type="GLint"/>
<glx sop="110" handcode="client"/>
</function>
- <function name="PixelMapfv" deprecated="3.1">
+ <function name="PixelMapfv" deprecated="3.1" marshal="sync">
<param name="map" type="GLenum"/>
<param name="mapsize" type="GLsizei" counter="true"/>
<param name="values" type="const GLfloat *" count="mapsize"/>
<glx rop="168" large="true"/>
</function>
- <function name="PixelMapuiv" deprecated="3.1">
+ <function name="PixelMapuiv" deprecated="3.1" marshal="sync">
<param name="map" type="GLenum"/>
<param name="mapsize" type="GLsizei" counter="true"/>
<param name="values" type="const GLuint *" count="mapsize"/>
<glx rop="169" large="true"/>
</function>
- <function name="PixelMapusv" deprecated="3.1">
+ <function name="PixelMapusv" deprecated="3.1" marshal="sync">
<param name="map" type="GLenum"/>
<param name="mapsize" type="GLsizei" counter="true"/>
<param name="values" type="const GLushort *" count="mapsize"/>
<glx rop="170" large="true"/>
</function>
- <function name="ReadBuffer" es2="3.0">
+ <function name="ReadBuffer" es2="3.0" no_error="true">
<param name="mode" type="GLenum"/>
<glx rop="171"/>
</function>
<glx rop="172"/>
</function>
- <function name="ReadPixels" es1="1.0" es2="2.0">
+ <function name="ReadPixels" es1="1.0" es2="2.0" no_error="true">
<param name="x" type="GLint"/>
<param name="y" type="GLint"/>
<param name="width" type="GLsizei"/>
<glx rop="190"/>
</function>
- <function name="Viewport" es1="1.0" es2="2.0">
+ <function name="Viewport" es1="1.0" es2="2.0" no_error="true">
<param name="x" type="GLint"/>
<param name="y" type="GLint"/>
<param name="width" type="GLsizei"/>
<enum name="CLIENT_VERTEX_ARRAY_BIT" value="0x00000002"/>
<enum name="CLIENT_ALL_ATTRIB_BITS" value="0xFFFFFFFF"/>
- <function name="ArrayElement" deprecated="3.1" exec="dynamic">
+ <function name="ArrayElement" deprecated="3.1" exec="dynamic" marshal="draw">
<param name="i" type="GLint"/>
<glx handcode="true"/>
</function>
- <function name="ColorPointer" es1="1.0" deprecated="3.1">
+ <function name="ColorPointer" es1="1.0" deprecated="3.1" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="size" type="GLint"/>
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<glx handcode="true"/>
</function>
- <function name="DrawArrays" es1="1.0" es2="2.0" exec="dynamic">
+ <function name="DrawArrays" es1="1.0" es2="2.0" exec="dynamic" marshal="draw">
<param name="mode" type="GLenum"/>
<param name="first" type="GLint"/>
<param name="count" type="GLsizei"/>
<glx rop="193" handcode="true"/>
</function>
- <function name="DrawElements" es1="1.0" es2="2.0" exec="dynamic">
+ <function name="DrawElements" es1="1.0" es2="2.0" exec="dynamic" marshal="draw"
+ marshal_fail="_mesa_glthread_is_non_vbo_draw_elements(ctx)">
<param name="mode" type="GLenum"/>
<param name="count" type="GLsizei"/>
<param name="type" type="GLenum"/>
<glx handcode="true"/>
</function>
- <function name="EdgeFlagPointer" deprecated="3.1">
+ <function name="EdgeFlagPointer" deprecated="3.1" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="stride" type="GLsizei"/>
<param name="pointer" type="const GLvoid *"/>
<glx handcode="true"/>
<glx handcode="true"/>
</function>
- <function name="GetPointerv" es1="1.1">
+ <function name="GetPointerv" es1="1.1" es2="3.2">
<param name="pname" type="GLenum"/>
<param name="params" type="GLvoid **" output="true"/>
<glx handcode="true"/>
</function>
- <function name="IndexPointer" deprecated="3.1">
+ <function name="IndexPointer" deprecated="3.1" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<param name="pointer" type="const GLvoid *"/>
<glx handcode="true"/>
</function>
- <function name="NormalPointer" es1="1.0" deprecated="3.1">
+ <function name="NormalPointer" es1="1.0" deprecated="3.1" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<param name="pointer" type="const GLvoid *"/>
<glx handcode="true"/>
</function>
- <function name="TexCoordPointer" es1="1.0" deprecated="3.1">
+ <function name="TexCoordPointer" es1="1.0" deprecated="3.1" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="size" type="GLint"/>
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<glx handcode="true"/>
</function>
- <function name="VertexPointer" es1="1.0" deprecated="3.1">
+ <function name="VertexPointer" es1="1.0" deprecated="3.1" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="size" type="GLint"/>
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<glx rop="192"/>
</function>
- <function name="CopyTexImage1D">
+ <function name="CopyTexImage1D" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="internalformat" type="GLenum"/>
<glx rop="4119"/>
</function>
- <function name="CopyTexImage2D" es1="1.0" es2="2.0">
+ <function name="CopyTexImage2D" es1="1.0" es2="2.0" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="internalformat" type="GLenum"/>
<glx rop="4120"/>
</function>
- <function name="CopyTexSubImage1D">
+ <function name="CopyTexSubImage1D" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
<glx rop="4121"/>
</function>
- <function name="CopyTexSubImage2D" es1="1.0" es2="2.0">
+ <function name="CopyTexSubImage2D" es1="1.0" es2="2.0" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
<glx rop="4122"/>
</function>
- <function name="TexSubImage1D">
+ <function name="TexSubImage1D" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
<glx rop="4099" large="true"/>
</function>
- <function name="TexSubImage2D" es1="1.0" es2="2.0">
+ <function name="TexSubImage2D" es1="1.0" es2="2.0" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
<glx sop="143" handcode="client" always_array="true"/>
</function>
- <function name="BindTexture" es1="1.0" es2="2.0">
+ <function name="BindTexture" es1="1.0" es2="2.0" no_error="true">
<param name="target" type="GLenum"/>
<param name="texture" type="GLuint"/>
<glx rop="4117"/>
<glx sop="144"/>
</function>
- <function name="GenTextures" es1="1.0" es2="2.0">
+ <function name="GenTextures" es1="1.0" es2="2.0" no_error="true">
<param name="n" type="GLsizei" counter="true"/>
<param name="textures" type="GLuint *" output="true" count="n"/>
<glx sop="145" always_array="true"/>
<glx rop="4097"/>
</function>
- <function name="DrawRangeElements" es2="3.0" exec="dynamic">
+ <function name="DrawRangeElements" es2="3.0" exec="dynamic" marshal="draw"
+ marshal_fail="_mesa_glthread_is_non_vbo_draw_elements(ctx)">
<param name="mode" type="GLenum"/>
<param name="start" type="GLuint"/>
<param name="end" type="GLuint"/>
<glx rop="4113"/>
</function>
- <function name="TexImage3D" es2="3.0">
+ <function name="TexImage3D" es2="3.0" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="internalformat" type="GLint"/>
<glx rop="4114" large="true"/>
</function>
- <function name="TexSubImage3D" es2="3.0">
+ <function name="TexSubImage3D" es2="3.0" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
<glx rop="4115" large="true"/>
</function>
- <function name="CopyTexSubImage3D" es2="3.0">
+ <function name="CopyTexSubImage3D" es2="3.0" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
<enum name="DOT3_RGB" value="0x86AE"/>
<enum name="DOT3_RGBA" value="0x86AF"/>
- <function name="ActiveTexture" es1="1.0" es2="2.0">
+ <function name="ActiveTexture" es1="1.0" es2="2.0" no_error="true">
<param name="texture" type="GLenum"/>
<glx rop="197"/>
</function>
<glx rop="229"/>
</function>
- <function name="CompressedTexImage3D" es2="3.0">
+ <function name="CompressedTexImage3D" es2="3.0" marshal="sync"
+ no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="internalformat" type="GLenum"/>
<glx rop="216" handcode="client"/>
</function>
- <function name="CompressedTexImage2D" es1="1.0" es2="2.0">
+ <function name="CompressedTexImage2D" es1="1.0" es2="2.0" marshal="sync"
+ no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="internalformat" type="GLenum"/>
<glx rop="215" handcode="client"/>
</function>
- <function name="CompressedTexImage1D">
+ <function name="CompressedTexImage1D" marshal="sync" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="internalformat" type="GLenum"/>
<glx rop="214" handcode="client"/>
</function>
- <function name="CompressedTexSubImage3D" es2="3.0">
+ <function name="CompressedTexSubImage3D" es2="3.0" marshal="sync"
+ no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
<glx rop="219" handcode="client"/>
</function>
- <function name="CompressedTexSubImage2D" es1="1.0" es2="2.0">
+ <function name="CompressedTexSubImage2D" es1="1.0" es2="2.0" marshal="sync"
+ no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
<glx rop="218" handcode="client"/>
</function>
- <function name="CompressedTexSubImage1D">
+ <function name="CompressedTexSubImage1D" marshal="sync" no_error="true">
<param name="target" type="GLenum"/>
<param name="level" type="GLint"/>
<param name="xoffset" type="GLint"/>
</enum>
<enum name="COMPARE_R_TO_TEXTURE" value="0x884E"/>
- <function name="BlendFuncSeparate" es2="2.0">
+ <function name="BlendFuncSeparate" es2="2.0" no_error="true">
<param name="sfactorRGB" type="GLenum"/>
<param name="dfactorRGB" type="GLenum"/>
<param name="sfactorAlpha" type="GLenum"/>
<glx rop="4125"/>
</function>
- <function name="FogCoordPointer" deprecated="3.1">
+ <function name="FogCoordPointer" deprecated="3.1" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<param name="pointer" type="const GLvoid *"/>
<glx handcode="true"/>
</function>
- <function name="MultiDrawArrays">
+ <function name="MultiDrawArrays" marshal="draw">
<param name="mode" type="GLenum"/>
<param name="first" type="const GLint *"/>
<param name="count" type="const GLsizei *"/>
<glx rop="4132"/>
</function>
- <function name="SecondaryColorPointer" deprecated="3.1">
+ <function name="SecondaryColorPointer" deprecated="3.1" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="size" type="GLint"/>
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<type name="intptr" size="4" glx_name="CARD32"/>
<type name="sizeiptr" size="4" unsigned="true" glx_name="CARD32"/>
- <function name="BindBuffer" es1="1.1" es2="2.0">
+ <function name="BindBuffer" es1="1.1" es2="2.0" marshal="custom" no_error="true">
<param name="target" type="GLenum"/>
<param name="buffer" type="GLuint"/>
<glx ignore="true"/>
</function>
- <function name="BufferData" es1="1.1" es2="2.0">
+ <function name="BufferData" es1="1.1" es2="2.0" marshal="custom">
<param name="target" type="GLenum"/>
<param name="size" type="GLsizeiptr" counter="true"/>
<param name="data" type="const GLvoid *" count="size" img_null_flag="true"/>
<glx ignore="true"/>
</function>
- <function name="BufferSubData" es1="1.1" es2="2.0">
+ <function name="BufferSubData" es1="1.1" es2="2.0" marshal="custom"
+ no_error="true">
<param name="target" type="GLenum"/>
<param name="offset" type="GLintptr"/>
<param name="size" type="GLsizeiptr" counter="true"/>
<glx ignore="true"/>
</function>
- <function name="GenBuffers" es1="1.1" es2="2.0">
+ <function name="GenBuffers" es1="1.1" es2="2.0" no_error="true">
<param name="n" type="GLsizei" counter="true"/>
<param name="buffer" type="GLuint *" output="true" count="n"/>
<glx ignore="true"/>
<glx ignore="true"/>
</function>
- <function name="MapBuffer">
+ <function name="MapBuffer" no_error="true">
<param name="target" type="GLenum"/>
<param name="access" type="GLenum"/>
<return type="GLvoid *"/>
<glx ignore="true"/>
</function>
- <function name="UnmapBuffer" es2="3.0">
+ <function name="UnmapBuffer" es2="3.0" no_error="true">
<param name="target" type="GLenum"/>
<return type="GLboolean"/>
<glx ignore="true"/>
<enum name="STENCIL_BACK_VALUE_MASK" value="0x8CA4"/>
<enum name="STENCIL_BACK_WRITEMASK" value="0x8CA5"/>
- <function name="BlendEquationSeparate" es2="2.0">
+ <function name="BlendEquationSeparate" es2="2.0" no_error="true">
<param name="modeRGB" type="GLenum"/>
<param name="modeA" type="GLenum"/>
<glx rop="4228"/>
<glx rop="233" large="true"/>
</function>
- <function name="StencilFuncSeparate" es2="2.0">
+ <function name="StencilFuncSeparate" es2="2.0" no_error="true">
<param name="face" type="GLenum"/>
<param name="func" type="GLenum"/>
<param name="ref" type="GLint"/>
<glx ignore="true"/>
</function>
- <function name="StencilOpSeparate" es2="2.0">
+ <function name="StencilOpSeparate" es2="2.0" no_error="true">
<param name="face" type="GLenum"/>
<param name="sfail" type="GLenum"/>
<param name="zfail" type="GLenum"/>
<glx ignore="true"/>
</function>
- <function name="StencilMaskSeparate" es2="2.0">
+ <function name="StencilMaskSeparate" es2="2.0" no_error="true">
<param name="face" type="GLenum"/>
<param name="mask" type="GLuint"/>
<glx ignore="true"/>
</function>
- <function name="AttachShader" es2="2.0">
+ <function name="AttachShader" es2="2.0" no_error="true">
<param name="program" type="GLuint"/>
<param name="shader" type="GLuint"/>
<glx ignore="true"/>
</function>
- <function name="BindAttribLocation" es2="2.0">
+ <function name="BindAttribLocation" es2="2.0" no_error="true">
<param name="program" type="GLuint"/>
<param name="index" type="GLuint"/>
<param name="name" type="const GLchar *"/>
<glx ignore="true"/>
</function>
- <function name="CreateShader" es2="2.0">
+ <function name="CreateShader" es2="2.0" no_error="true">
<param name="type" type="GLenum"/>
<return type="GLuint"/>
<glx ignore="true"/>
<glx ignore="true"/>
</function>
- <function name="DisableVertexAttribArray" es2="2.0">
+ <function name="DisableVertexAttribArray" es2="2.0" no_error="true">
<param name="index" type="GLuint"/>
<glx ignore="true"/>
<glx handcode="true"/>
</function>
- <function name="EnableVertexAttribArray" es2="2.0">
+ <function name="EnableVertexAttribArray" es2="2.0" no_error="true">
<param name="index" type="GLuint"/>
<glx ignore="true"/>
<glx handcode="true"/>
<glx ignore="true"/>
</function>
- <function name="GetUniformLocation" es2="2.0">
+ <function name="GetUniformLocation" es2="2.0" no_error="true">
<param name="program" type="GLuint"/>
<param name="name" type="const GLchar *"/>
<return type="GLint"/>
<glx ignore="true"/>
</function>
- <function name="ShaderSource" es2="2.0">
+ <function name="ShaderSource" es2="2.0" marshal="custom">
<param name="shader" type="GLuint"/>
<param name="count" type="GLsizei"/>
<param name="string" type="const GLchar * const *"/>
<glx ignore="true"/>
</function>
- <function name="UseProgram" es2="2.0">
+ <function name="UseProgram" es2="2.0" no_error="true">
<param name="program" type="GLuint"/>
<glx ignore="true"/>
</function>
<glx rop="4233"/>
</function>
- <function name="VertexAttribPointer" es2="2.0">
+ <function name="VertexAttribPointer" es2="2.0" marshal="async"
+ no_error="true"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="index" type="GLuint"/>
<param name="size" type="GLint"/>
<param name="type" type="GLenum"/>
<param name="location" type="GLint"/>
<param name="count" type="GLsizei" counter="true"/>
<param name="transpose" type="GLboolean"/>
- <param name="value" type="const GLfloat *" count="count" count_scale="6"/>
+ <param name="value" type="const GLfloat *" count="count" count_scale="8"/>
<glx ignore="true"/>
</function>
<function name="UniformMatrix4x2fv" es2="3.0">
<glx ignore="true"/>
</function>
- <function name="CreateShaderObjectARB">
+ <function name="CreateShaderObjectARB" no_error="true">
<param name="shaderType" type="GLenum"/>
<return type="GLhandleARB"/>
<glx ignore="true"/>
<glx ignore="true"/>
</function>
- <function name="AttachObjectARB">
+ <function name="AttachObjectARB" no_error="true">
<param name="containerObj" type="GLhandleARB"/>
<param name="obj" type="GLhandleARB"/>
<glx ignore="true"/>
<enum name="MAX_TRANSFORM_FEEDBACK_BUFFERS" value="0x8E70"/>
<enum name="MAX_VERTEX_STREAMS" value="0x8E71"/>
- <function name="DrawTransformFeedbackStream" exec="dynamic">
+ <function name="DrawTransformFeedbackStream" exec="dynamic" marshal="draw">
<param name="mode" type="GLenum"/>
<param name="id" type="GLuint"/>
<param name="stream" type="GLuint"/>
<xi:include href="ARB_base_instance.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<category name="GL_ARB_transform_feedback_instanced" number="109">
- <function name="DrawTransformFeedbackInstanced" exec="dynamic">
+ <function name="DrawTransformFeedbackInstanced" exec="dynamic" marshal="draw">
<param name="mode" type="GLenum"/>
<param name="id" type="GLuint"/>
<param name="primcount" type="GLsizei"/>
</function>
- <function name="DrawTransformFeedbackStreamInstanced" exec="dynamic">
+ <function name="DrawTransformFeedbackStreamInstanced" exec="dynamic" marshal="draw">
<param name="mode" type="GLenum"/>
<param name="id" type="GLuint"/>
<param name="stream" type="GLuint"/>
<xi:include href="ARB_framebuffer_no_attachments.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-<!-- ARB extensions #131 -->
+<xi:include href="ARB_internalformat_query2.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<category name="GL_ARB_explicit_uniform_location" number="128">
<enum name="MAX_UNIFORM_LOCATIONS" count="1" value="0x826E" >
<enum name="BUFFER_STORAGE_FLAGS" value="0x8220" />
<enum name="CLIENT_MAPPED_BUFFER_BARRIER_BIT" value="0x4000" />
- <function name="BufferStorage">
+ <function name="BufferStorage" no_error="true">
<param name="target" type="GLenum"/>
<param name="size" type="GLsizeiptr"/>
<param name="data" type="const GLvoid *"/>
<enum name="QUERY_BUFFER_BARRIER_BIT" value="0x00008000"/>
</category>
-<!-- ARB extensions 149 - 153 -->
+<!-- ARB extensions 149 - 151 -->
+
+<xi:include href="ARB_bindless_texture.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_compute_variable_group_size.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<xi:include href="ARB_indirect_parameters.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<enum name="QUERY_BY_REGION_NO_WAIT_INVERTED" value="0x8E1A"/>
</category>
-<!-- ARB extensions 162 - 163 -->
+<category name="ARB_cull_distance" number="162">
+ <enum name="MAX_CULL_DISTANCES" value="0x82F9"/>
+ <enum name="MAX_COMBINED_CLIP_AND_CULL_DISTANCES" value="0x82FA"/>
+</category>
+
+<!-- ARB extensions 163 -->
+
+<xi:include href="OES_texture_compression_astc.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<xi:include href="ARB_direct_state_access.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<xi:include href="KHR_context_flush_control.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+<!-- ARB extension 170 -->
+<xi:include href="KHR_robustness.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
<!-- ARB extension 171 -->
<xi:include href="ARB_pipeline_statistics_query.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+<!-- ARB extension 172 -->
+<xi:include href="ARB_sparse_buffer.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<category name="es3.2">
+ <!-- This should be in es_EXT, but this file is included first and
+ the alias doesn't work otherwise. -->
+ <function name="PrimitiveBoundingBox" es2="3.2" desktop="false">
+ <param name="minX" type="GLfloat"/>
+ <param name="minY" type="GLfloat"/>
+ <param name="minZ" type="GLfloat"/>
+ <param name="minW" type="GLfloat"/>
+ <param name="maxX" type="GLfloat"/>
+ <param name="maxY" type="GLfloat"/>
+ <param name="maxZ" type="GLfloat"/>
+ <param name="maxW" type="GLfloat"/>
+ </function>
+
+ <function name="BlendBarrier" es2="3.2"/>
+</category>
+
+<category name="KHR_blend_equation_advanced" number="174">
+ <enum name="BLEND_ADVANCED_COHERENT_KHR" value="0x9285"/>
+
+ <enum name="MULTIPLY_KHR" value="0x9294"/>
+ <enum name="SCREEN_KHR" value="0x9295"/>
+ <enum name="OVERLAY_KHR" value="0x9296"/>
+ <enum name="DARKEN_KHR" value="0x9297"/>
+ <enum name="LIGHTEN_KHR" value="0x9298"/>
+ <enum name="COLORDODGE_KHR" value="0x9299"/>
+ <enum name="COLORBURN_KHR" value="0x929A"/>
+ <enum name="HARDLIGHT_KHR" value="0x929B"/>
+ <enum name="SOFTLIGHT_KHR" value="0x929C"/>
+ <enum name="DIFFERENCE_KHR" value="0x929E"/>
+ <enum name="EXCLUSION_KHR" value="0x92A0"/>
+
+ <enum name="HSL_HUE_KHR" value="0x92AD"/>
+ <enum name="HSL_SATURATION_KHR" value="0x92AE"/>
+ <enum name="HSL_COLOR_KHR" value="0x92AF"/>
+ <enum name="HSL_LUMINOSITY_KHR" value="0x92B0"/>
+
+ <function name="BlendBarrierKHR" alias="BlendBarrier" es2="2.0"/>
+</category>
+
+<category name="ARB_ES3_2_compatibility" number="177">
+
+ <enum name="PRIMITIVE_BOUNDING_BOX_ARB" count="8" value="0x92BE">
+ <size name="Get" mode="get"/>
+ </enum>
+ <enum name="MULTISAMPLE_LINE_WIDTH_RANGE_ARB" count="2" value="0x9381">
+ <size name="Get" mode="get"/>
+ </enum>
+ <enum name="MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB" value="0x9382">
+ <size name="Get" mode="get"/>
+ </enum>
+
+ <function name="PrimitiveBoundingBoxARB" alias="PrimitiveBoundingBox">
+ <param name="minX" type="GLfloat"/>
+ <param name="minY" type="GLfloat"/>
+ <param name="minZ" type="GLfloat"/>
+ <param name="minW" type="GLfloat"/>
+ <param name="maxX" type="GLfloat"/>
+ <param name="maxY" type="GLfloat"/>
+ <param name="maxZ" type="GLfloat"/>
+ <param name="maxW" type="GLfloat"/>
+ </function>
+
+</category>
+
+<xi:include href="ARB_gpu_shader_int64.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
<!-- Non-ARB extensions sorted by extension number. -->
<category name="GL_EXT_blend_color" number="2">
<param name="i" type="GLint"/>
</function>
- <function name="ColorPointerEXT" deprecated="3.1">
+ <function name="ColorPointerEXT" deprecated="3.1" marshal="async"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="size" type="GLint"/>
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<param name="count" type="GLsizei"/>
</function>
- <function name="EdgeFlagPointerEXT" deprecated="3.1">
+ <function name="EdgeFlagPointerEXT" deprecated="3.1" marshal="async"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="stride" type="GLsizei"/>
<param name="count" type="GLsizei"/>
<param name="pointer" type="const GLboolean *"/>
<param name="params" type="GLvoid **" output="true"/>
</function>
- <function name="IndexPointerEXT" deprecated="3.1">
+ <function name="IndexPointerEXT" deprecated="3.1" marshal="async"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<param name="count" type="GLsizei"/>
<glx handcode="true"/>
</function>
- <function name="NormalPointerEXT" deprecated="3.1">
+ <function name="NormalPointerEXT" deprecated="3.1" marshal="async"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<param name="count" type="GLsizei"/>
<glx handcode="true"/>
</function>
- <function name="TexCoordPointerEXT" deprecated="3.1">
+ <function name="TexCoordPointerEXT" deprecated="3.1" marshal="async"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="size" type="GLint"/>
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
<glx handcode="true"/>
</function>
- <function name="VertexPointerEXT" deprecated="3.1">
+ <function name="VertexPointerEXT" deprecated="3.1" marshal="async"
+ marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
<param name="size" type="GLint"/>
<param name="type" type="GLenum"/>
<param name="stride" type="GLsizei"/>
</category>
<category name="GL_EXT_multi_draw_arrays" number="148">
- <function name="MultiDrawArraysEXT" es1="1.0" es2="2.0" alias="MultiDrawArrays">
+ <function name="MultiDrawArraysEXT" es1="1.0" es2="2.0" exec="dynamic" alias="MultiDrawArrays">
<param name="mode" type="GLenum"/>
<param name="first" type="const GLint *"/>
<param name="count" type="const GLsizei *"/>
<param name="primcount" type="GLsizei"/>
</function>
- <function name="MultiDrawElementsEXT" es1="1.0" es2="2.0" exec="dynamic">
+ <function name="MultiDrawElementsEXT" es1="1.0" es2="2.0" exec="dynamic" marshal="draw"
+ marshal_fail="_mesa_glthread_is_non_vbo_draw_elements(ctx)">
<param name="mode" type="GLenum"/>
<param name="count" type="const GLsizei *"/>
<param name="type" type="GLenum"/>
</category>
<category name="GL_IBM_multimode_draw_arrays" number="200">
- <function name="MultiModeDrawArraysIBM">
+ <function name="MultiModeDrawArraysIBM" marshal="draw">
<param name="mode" type="const GLenum *"/>
<param name="first" type="const GLint *"/>
<param name="count" type="const GLsizei *"/>
<glx handcode="true" ignore="true"/>
</function>
- <function name="MultiModeDrawElementsIBM">
+ <function name="MultiModeDrawElementsIBM" marshal="draw"
+ marshal_fail="_mesa_glthread_is_non_vbo_draw_elements(ctx)">
<param name="mode" type="const GLenum *"/>
<param name="count" type="const GLsizei *"/>
<param name="type" type="GLenum"/>
<enum name="GPU_MEMORY_INFO_EVICTED_MEMORY_NVX" value="0x904B" />
</category>
+<category name="GL_NV_fill_rectangle" number="466">
+ <enum name="FILL_RECTANGLE_NV" value="0x933C"/>
+</category>
+
+<category name="GL_INTEL_conservative_rasterization" number="491">
+ <enum name="CONSERVATIVE_RASTERIZATION_INTEL" value="0x83FE"/>
+</category>
+
<xi:include href="INTEL_performance_query.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
<category name="GL_EXT_polygon_offset_clamp" number="460">
<enum name="POLYGON_OFFSET_CLAMP_EXT" value="0x8E1B">
<size name="Get" mode="get"/>
</enum>
- <function name="PolygonOffsetClampEXT">
+ <function name="PolygonOffsetClampEXT" es1="1.0" es2="2.0">
<param name="factor" type="GLfloat"/>
<param name="units" type="GLfloat"/>
<param name="clamp" type="GLfloat"/>
</function>
</category>
+<xi:include href="EXT_window_rectangles.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
<!-- Unnumbered extensions sorted by name. -->
<category name="GL_ATI_blend_equation_separate">