diff options
author | Harish Krupo <[email protected]> | 2017-10-04 14:56:28 +0300 |
---|---|---|
committer | Tapani Pälli <[email protected]> | 2017-10-25 14:10:38 +0300 |
commit | d37bcf3cc2bfea79a7130ab123e94f6b881a5b7e (patch) | |
tree | 3494bfa96bd978642a98a470b89a77a5dbb0d8b2 | |
parent | f5bec8583a568b62cf5bbdadc669ecec6b9c28cb (diff) |
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 <[email protected]>
Signed-off-by: Tapani Pälli <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
-rw-r--r-- | src/mapi/glapi/gen/es_EXT.xml | 51 | ||||
-rw-r--r-- | src/mesa/main/extensions_table.h | 1 | ||||
-rw-r--r-- | src/mesa/main/tests/dispatch_sanity.cpp | 31 |
3 files changed, 76 insertions, 7 deletions
diff --git a/src/mapi/glapi/gen/es_EXT.xml b/src/mapi/glapi/gen/es_EXT.xml index 3a2bdb2fdc3..f19007366fe 100644 --- a/src/mapi/glapi/gen/es_EXT.xml +++ b/src/mapi/glapi/gen/es_EXT.xml @@ -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"/> diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h index 20753113189..8d8b6376dc7 100644 --- a/src/mesa/main/extensions_table.h +++ b/src/mesa/main/extensions_table.h @@ -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) diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp index aea9ffb37f3..8c511805b51 100644 --- a/src/mesa/main/tests/dispatch_sanity.cpp +++ b/src/mesa/main/tests/dispatch_sanity.cpp @@ -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 }, |