[Mesa-dev] [PATCH 1/7] mesa/es3.1: enable DRAW_INDIRECT_BUFFER_BINDING for gles3.1

Tapani Pälli tapani.palli at intel.com
Wed May 6 03:19:22 PDT 2015


I've just noticed that this is wrong, sorry :/ We should to make a new 
section for some of the enums that are only in GL core and ES31, 
DRAW_INDIRECT_BUFFER_BINDING is one of these cases .. so this patch is 
broken. Same may apply for some of your patches, there should not be 
duplicates but only one entry per enum in the correct API section.

(Otherwise, enabling these getters for ES3.1 is correct thing todo.)


On 05/06/2015 11:53 AM, Marta Lofstedt wrote:
> From: Tapani Pälli <tapani.palli at intel.com>
>
> (increases ES31-CTS.draw_indirect.basic.* passing tests)
>
> Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
> ---
>   src/mesa/main/get.c              | 12 ++++++++++++
>   src/mesa/main/get_hash_params.py |  2 ++
>   2 files changed, 14 insertions(+)
>
> diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
> index a881bc5..9898197 100644
> --- a/src/mesa/main/get.c
> +++ b/src/mesa/main/get.c
> @@ -138,6 +138,7 @@ enum value_extra {
>      EXTRA_API_GL_CORE,
>      EXTRA_API_ES2,
>      EXTRA_API_ES3,
> +   EXTRA_API_ES31,
>      EXTRA_NEW_BUFFERS,
>      EXTRA_NEW_FRAG_CLAMP,
>      EXTRA_VALID_DRAW_BUFFER,
> @@ -348,6 +349,12 @@ static const int extra_ARB_shader_image_load_store_and_geometry_shader[] = {
>      EXTRA_END
>   };
>
> +static const int extra_ARB_draw_indirect_es31[] = {
> +   EXT(ARB_draw_indirect),
> +   EXTRA_API_ES31,
> +   EXTRA_END
> +};
> +
>   EXTRA_EXT(ARB_texture_cube_map);
>   EXTRA_EXT(EXT_texture_array);
>   EXTRA_EXT(NV_fog_distance);
> @@ -1078,6 +1085,11 @@ check_extra(struct gl_context *ctx, const char *func, const struct value_desc *d
>            if (_mesa_is_gles3(ctx))
>               api_found = GL_TRUE;
>   	 break;
> +      case EXTRA_API_ES31:
> +         api_check = GL_TRUE;
> +         if (_mesa_is_gles31(ctx))
> +            api_found = GL_TRUE;
> +	 break;
>         case EXTRA_API_GL:
>            api_check = GL_TRUE;
>            if (_mesa_is_desktop_gl(ctx))
> diff --git a/src/mesa/main/get_hash_params.py b/src/mesa/main/get_hash_params.py
> index 41cb2c1..998efe8 100644
> --- a/src/mesa/main/get_hash_params.py
> +++ b/src/mesa/main/get_hash_params.py
> @@ -407,6 +407,8 @@ descriptor=[
>   { "apis": ["GL", "GL_CORE", "GLES3"], "params": [
>   # GL_ARB_sampler_objects / GL 3.3 / GLES 3.0
>     [ "SAMPLER_BINDING", "LOC_CUSTOM, TYPE_INT, GL_SAMPLER_BINDING, NO_EXTRA" ],
> +# GL_ARB_draw_indirect / GLES 3.1
> +  [ "DRAW_INDIRECT_BUFFER_BINDING", "LOC_CUSTOM, TYPE_INT, 0, extra_ARB_draw_indirect_es31" ],
>   ]},
>
>   # Remaining enums are only in OpenGL
>


More information about the mesa-dev mailing list