gles2: support for GL_EXT_occlusion_query_boolean

Following test checking entrypoints passes:
   dEQP-EGL.functional.get_proc_address.extension.gl_ext_occlusion_query_boolean

Piglit test 'ext_occlusion_query_boolean-any-samples' passes with these changes.

No changes/regression observed in WebGL occlusion tests or Intel CI.

v2: add es2="2.0" for glapi entrypoints, clean up xml
    dispatch_sanity changes (fix 'make check')

Signed-off-by: Harish Krupo <harish.krupo.kps@intel.com>
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Harish Krupo 2017-10-04 14:56:28 +03:00 committed by Tapani Pälli
parent f5bec8583a
commit d37bcf3cc2
3 changed files with 76 additions and 7 deletions

View File

@ -751,6 +751,57 @@
</function>
</category>
<!-- 100. GL_EXT_occlusion_query_boolean -->
<category name="GL_EXT_occlusion_query_boolean" number="100">
<enum name="CURRENT_QUERY_EXT" value="0x8865"/>
<enum name="QUERY_RESULT_EXT" value="0x8866"/>
<enum name="QUERY_RESULT_AVAILABLE_EXT" value="0x8867"/>
<enum name="ANY_SAMPLES_PASSED_EXT" value="0x8C2F"/>
<enum name="ANY_SAMPLES_PASSED_CONSERVATIVE_EXT" value="0x8D6A"/>
<function name="GenQueriesEXT" alias="GenQueries" es2="2.0">
<param name="n" type="GLsizei"/>
<param name="ids" type="GLuint *"/>
</function>
<function name="DeleteQueriesEXT" alias="DeleteQueries" es2="2.0">
<param name="n" type="GLsizei"/>
<param name="ids" type="const GLuint *"/>
</function>
<function name="IsQueryEXT" alias="IsQuery" es2="2.0">
<param name="id" type="GLuint"/>
<return type="GLboolean"/>
</function>
<function name="BeginQueryEXT" alias="BeginQuery" es2="2.0">
<param name="target" type="GLenum"/>
<param name="id" type="GLuint"/>
</function>
<function name="EndQueryEXT" alias="EndQuery" es2="2.0">
<param name="target" type="GLenum"/>
</function>
<function name="GetQueryivEXT" alias="GetQueryiv" es2="2.0">
<param name="target" type="GLenum"/>
<param name="pname" type="GLenum"/>
<param name="params" type="GLint *"/>
</function>
<function name="GetQueryObjectivEXT" alias="GetQueryObjectiv" es2="2.0">
<param name="id" type="GLuint"/>
<param name="pname" type="GLenum"/>
<param name="params" type="GLint *"/>
</function>
<function name="GetQueryObjectuivEXT" alias="GetQueryObjectuiv" es2="2.0">
<param name="id" type="GLuint"/>
<param name="pname" type="GLenum"/>
<param name="params" type="GLuint *"/>
</function>
</category>
<!-- 103. GL_EXT_texture_rg -->
<category name="GL_EXT_texture_rg" number="103">
<enum name="RED_EXT" value="0x1903"/>

View File

@ -231,6 +231,7 @@ EXT(EXT_map_buffer_range , ARB_map_buffer_range
EXT(EXT_memory_object , EXT_memory_object , GLL, GLC, x , ES2, 2017)
EXT(EXT_memory_object_fd , EXT_memory_object_fd , GLL, GLC, x , ES2, 2017)
EXT(EXT_multi_draw_arrays , dummy_true , GLL, x , ES1, ES2, 1999)
EXT(EXT_occlusion_query_boolean , ARB_occlusion_query , x , x , x , ES2, 2001)
EXT(EXT_packed_depth_stencil , dummy_true , GLL, GLC, x , x , 2005)
EXT(EXT_packed_float , EXT_packed_float , GLL, GLC, x , x , 2004)
EXT(EXT_packed_pixels , dummy_true , GLL, x , x , x , 1997)

View File

@ -2424,11 +2424,22 @@ const struct function gles2_functions_possible[] = {
/* GL_KHR_blend_equation_advanced */
{ "glBlendBarrierKHR", 20, -1 },
/* GL_EXT_occlusion_query_boolean */
{ "glGenQueriesEXT", 20, -1 },
{ "glDeleteQueriesEXT", 20, -1 },
{ "glIsQueryEXT", 20, -1 },
{ "glBeginQueryEXT", 20, -1 },
{ "glEndQueryEXT", 20, -1 },
{ "glGetQueryivEXT", 20, -1 },
{ "glGetQueryObjectivEXT", 20, -1 },
{ "glGetQueryObjectuivEXT", 20, -1 },
{ NULL, 0, -1 }
};
const struct function gles3_functions_possible[] = {
{ "glBeginQuery", 30, -1 },
// We check for the aliased -EXT version in GLES 2
// { "glBeginQuery", 30, -1 },
{ "glBeginTransformFeedback", 30, -1 },
{ "glBindBufferBase", 30, -1 },
{ "glBindBufferRange", 30, -1 },
@ -2449,7 +2460,8 @@ const struct function gles3_functions_possible[] = {
{ "glCopyBufferSubData", 30, -1 },
// We check for the aliased -OES version in GLES 2
// { "glCopyTexSubImage3D", 30, -1 },
{ "glDeleteQueries", 30, -1 },
// We check for the aliased -EXT version in GLES 2
// { "glDeleteQueries", 30, -1 },
{ "glDeleteSamplers", 30, -1 },
{ "glDeleteSync", 30, -1 },
{ "glDeleteTransformFeedbacks", 30, -1 },
@ -2460,13 +2472,15 @@ const struct function gles3_functions_possible[] = {
// { "glDrawBuffers", 30, -1 },
{ "glDrawElementsInstanced", 30, -1 },
{ "glDrawRangeElements", 30, -1 },
{ "glEndQuery", 30, -1 },
// We check for the aliased -EXT version in GLES 2
// { "glEndQuery", 30, -1 },
{ "glEndTransformFeedback", 30, -1 },
{ "glFenceSync", 30, -1 },
// We check for the aliased -EXT version in GLES 2
// { "glFlushMappedBufferRange", 30, -1 },
{ "glFramebufferTextureLayer", 30, -1 },
{ "glGenQueries", 30, -1 },
// We check for the aliased -EXT version in GLES 2
// { "glGenQueries", 30, -1 },
{ "glGenSamplers", 30, -1 },
{ "glGenTransformFeedbacks", 30, -1 },
// We check for the aliased -OES version in GLES 2
@ -2484,8 +2498,10 @@ const struct function gles3_functions_possible[] = {
{ "glGetInternalformativ", 30, -1 },
{ "glGetInternalformati64v", 30, -1 },
// glGetProgramBinary aliases glGetProgramBinaryOES in GLES 2
{ "glGetQueryiv", 30, -1 },
{ "glGetQueryObjectuiv", 30, -1 },
// We check for the aliased -EXT version in GLES 2
// { "glGetQueryiv", 30, -1 },
// We check for the aliased -EXT version in GLES 2
// { "glGetQueryObjectuiv", 30, -1 },
{ "glGetSamplerParameterfv", 30, -1 },
{ "glGetSamplerParameteriv", 30, -1 },
{ "glGetStringi", 30, -1 },
@ -2498,7 +2514,8 @@ const struct function gles3_functions_possible[] = {
{ "glGetVertexAttribIuiv", 30, -1 },
{ "glInvalidateFramebuffer", 30, -1 },
{ "glInvalidateSubFramebuffer", 30, -1 },
{ "glIsQuery", 30, -1 },
// We check for the aliased -EXT version in GLES 2
// { "glIsQuery", 30, -1 },
{ "glIsSampler", 30, -1 },
{ "glIsSync", 30, -1 },
{ "glIsTransformFeedback", 30, -1 },