mesa: add GL_OES/EXT_draw_buffers_indexed support

This is the same ext as ARB_draw_buffers_blend (plus some core
functionality that already exists). Add the alias entrypoints.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
Ilia Mirkin 2016-03-31 00:48:01 -04:00
parent a57320a9ba
commit e0e1683087
5 changed files with 120 additions and 1 deletions

View File

@ -257,7 +257,7 @@ GLES3.2, GLSL ES 3.2
GL_KHR_robustness not started (90% done with the ARB variant)
GL_KHR_texture_compression_astc_ldr DONE (i965/gen9+)
GL_OES_copy_image DONE (core only)
GL_OES_draw_buffers_indexed not started
GL_OES_draw_buffers_indexed DONE (all drivers that support GL_ARB_draw_buffers_blend)
GL_OES_draw_elements_base_vertex DONE (all drivers)
GL_OES_geometry_shader started (Marta)
GL_OES_gpu_shader5 DONE (all drivers that support GL_ARB_gpu_shader5)

View File

@ -49,6 +49,7 @@ Note: some of the new features are only available with certain drivers.
<li>GL_ARB_shader_image_load_store on radeonsi, softpipe</li>
<li>GL_ARB_shader_image_size on radeonsi</li>
<li>GL_ATI_fragment_shader on all Gallium drivers</li>
<li>GL_OES_draw_buffers_indexed and GL_EXT_draw_buffers_indexed on all drivers that support GL_ARB_draw_buffers_blend</li>
<li>GL_OES_texture_border_clamp and GL_EXT_texture_border_clamp on all drivers that support GL_ARB_texture_border_clamp</li>
<li>GL_OES_shader_image_atomic on all drivers that support GL_ARB_shader_image_load_store</li>
</ul>

View File

@ -823,6 +823,59 @@
</function>
</category>
<category name="GL_EXT_draw_buffers_indexed" number="176">
<function name="BlendFunciEXT" alias="BlendFunciARB" es2="3.0">
<param name="buf" type="GLuint"/>
<param name="sfactor" type="GLenum"/>
<param name="dfactor" type="GLenum"/>
</function>
<function name="BlendFuncSeparateiEXT" alias="BlendFuncSeparateiARB" es2="3.0">
<param name="buf" type="GLuint"/>
<param name="sfactorRGB" type="GLenum"/>
<param name="dfactorRGB" type="GLenum"/>
<param name="sfactorAlpha" type="GLenum"/>
<param name="dfactorAlpha" type="GLenum"/>
</function>
<function name="BlendEquationiEXT" alias="BlendEquationiARB" es2="3.0">
<param name="buf" type="GLuint"/>
<param name="mode" type="GLenum"/>
</function>
<function name="BlendEquationSeparateiEXT" alias="BlendEquationSeparateiARB" es2="3.0">
<param name="buf" type="GLuint"/>
<param name="modeRGB" type="GLenum"/>
<param name="modeA" type="GLenum"/>
</function>
<function name="ColorMaskiEXT" alias="ColorMaski" es2="3.0">
<param name="buf" 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="EnableiEXT" alias="Enablei" es2="3.0">
<param name="target" type="GLenum"/>
<param name="index" type="GLuint"/>
</function>
<function name="DisableiEXT" alias="Disablei" es2="3.0">
<param name="target" type="GLenum"/>
<param name="index" type="GLuint"/>
</function>
<function name="IsEnablediEXT" alias="IsEnabledi" es2="3.0">
<param name="target" type="GLenum"/>
<param name="index" type="GLuint"/>
<return type="GLboolean"/>
</function>
</category>
<category name="GL_EXT_texture_border_clamp" number="182">
<!-- The *TexParameter* functions are added in EXT_texture_integer -->
@ -937,6 +990,59 @@
</category>
<category name="GL_OES_draw_buffers_indexed" number="209">
<function name="BlendFunciOES" alias="BlendFunciARB" es2="3.0">
<param name="buf" type="GLuint"/>
<param name="sfactor" type="GLenum"/>
<param name="dfactor" type="GLenum"/>
</function>
<function name="BlendFuncSeparateiOES" alias="BlendFuncSeparateiARB" es2="3.0">
<param name="buf" type="GLuint"/>
<param name="sfactorRGB" type="GLenum"/>
<param name="dfactorRGB" type="GLenum"/>
<param name="sfactorAlpha" type="GLenum"/>
<param name="dfactorAlpha" type="GLenum"/>
</function>
<function name="BlendEquationiOES" alias="BlendEquationiARB" es2="3.0">
<param name="buf" type="GLuint"/>
<param name="mode" type="GLenum"/>
</function>
<function name="BlendEquationSeparateiOES" alias="BlendEquationSeparateiARB" es2="3.0">
<param name="buf" type="GLuint"/>
<param name="modeRGB" type="GLenum"/>
<param name="modeA" type="GLenum"/>
</function>
<function name="ColorMaskiOES" alias="ColorMaski" es2="3.0">
<param name="buf" 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="EnableiOES" alias="Enablei" es2="3.0">
<param name="target" type="GLenum"/>
<param name="index" type="GLuint"/>
</function>
<function name="DisableiOES" alias="Disablei" es2="3.0">
<param name="target" type="GLenum"/>
<param name="index" type="GLuint"/>
</function>
<function name="IsEnablediOES" alias="IsEnabledi" es2="3.0">
<param name="target" type="GLenum"/>
<param name="index" type="GLuint"/>
<return type="GLboolean"/>
</function>
</category>
<category name="GL_OES_texture_buffer" number="216">
<function name="TexBufferOES" es2="3.1" alias="TexBuffer">

View File

@ -192,6 +192,7 @@ EXT(EXT_depth_bounds_test , EXT_depth_bounds_test
EXT(EXT_discard_framebuffer , dummy_true , x , x , ES1, ES2, 2009)
EXT(EXT_draw_buffers , dummy_true , x , x , x , ES2, 2012)
EXT(EXT_draw_buffers2 , EXT_draw_buffers2 , GLL, GLC, x , x , 2006)
EXT(EXT_draw_buffers_indexed , ARB_draw_buffers_blend , x , x , x , 30, 2014)
EXT(EXT_draw_elements_base_vertex , ARB_draw_elements_base_vertex , x , x , x , ES2, 2014)
EXT(EXT_draw_instanced , ARB_draw_instanced , GLL, GLC, x , x , 2006)
EXT(EXT_draw_range_elements , dummy_true , GLL, x , x , x , 1997)
@ -315,6 +316,7 @@ EXT(OES_depth24 , dummy_true
EXT(OES_depth32 , dummy_false , x , x , x , x , 2005)
EXT(OES_depth_texture , ARB_depth_texture , x , x , x , ES2, 2006)
EXT(OES_depth_texture_cube_map , OES_depth_texture_cube_map , x , x , x , ES2, 2012)
EXT(OES_draw_buffers_indexed , ARB_draw_buffers_blend , x , x , x , 30, 2014)
EXT(OES_draw_elements_base_vertex , ARB_draw_elements_base_vertex , x , x , x , ES2, 2014)
EXT(OES_draw_texture , OES_draw_texture , x , x , ES1, x , 2004)
EXT(OES_element_index_uint , dummy_true , x , x , ES1, ES2, 2005)

View File

@ -2460,6 +2460,16 @@ const struct function gles3_functions_possible[] = {
/* GL_OES_copy_image */
{ "glCopyImageSubDataOES", 30, -1 },
/* GL_OES_draw_buffers_indexed */
{ "glBlendFunciOES", 30, -1 },
{ "glBlendFuncSeparateiOES", 30, -1 },
{ "glBlendEquationiOES", 30, -1 },
{ "glBlendEquationSeparateiOES", 30, -1 },
{ "glColorMaskiOES", 30, -1 },
{ "glEnableiOES", 30, -1 },
{ "glDisableiOES", 30, -1 },
{ "glIsEnablediOES", 30, -1 },
{ NULL, 0, -1 }
};