[Mesa-dev] [PATCH] Expose support for GL_EXT_buffer_storage

Ilia Mirkin imirkin at alum.mit.edu
Mon Nov 2 17:24:02 PST 2015


On Mon, Nov 2, 2015 at 8:19 PM, Ryan Houdek <sonicadvance1 at gmail.com> wrote:
> This extension requires ES 3.1 since it relies on glMemoryBarrier.
> For testing purposes I temporarily moved glMemoryBarrier to be an ES 3.0
> function.
> This has been tested with the piglit in the ML and the Dolphin emulator.
> ---
>  docs/relnotes/11.1.0.html     | 1 +
>  src/mapi/glapi/gen/es_EXT.xml | 9 +++++++++
>  src/mesa/main/extensions.c    | 1 +
>  3 files changed, 11 insertions(+)
>
> diff --git a/docs/relnotes/11.1.0.html b/docs/relnotes/11.1.0.html
> index 7160244..0b044cf 100644
> --- a/docs/relnotes/11.1.0.html
> +++ b/docs/relnotes/11.1.0.html
> @@ -55,6 +55,7 @@ Note: some of the new features are only available with certain drivers.
>  <li>GL_ARB_texture_barrier / GL_NV_texture_barrier on i965</li>
>  <li>GL_ARB_texture_query_lod on softpipe</li>
>  <li>GL_ARB_texture_view on radeonsi</li>
> +<li>GL_EXT_buffer_storage implemented for when ES 3.1 support is gained</li>
>  <li>GL_EXT_draw_elements_base_vertex on all drivers</li>
>  <li>GL_OES_draw_elements_base_vertex on all drivers</li>
>  <li>EGL_KHR_create_context on softpipe, llvmpipe</li>
> diff --git a/src/mapi/glapi/gen/es_EXT.xml b/src/mapi/glapi/gen/es_EXT.xml
> index bf20e48..9a777a2 100644
> --- a/src/mapi/glapi/gen/es_EXT.xml
> +++ b/src/mapi/glapi/gen/es_EXT.xml
> @@ -905,4 +905,13 @@
>
>  </category>
>
> +<category name="GL_EXT_buffer_storage" number="239">
> +    <function name="BufferStorageEXT" alias="BufferStorage" es2="3.1">
> +        <param name="target" type="GLenum"/>
> +        <param name="size" type="GLsizeiptr"/>
> +        <param name="data" type="const GLvoid *"/>
> +        <param name="flags" type="GLbitfield"/>
> +    </function>
> +</category>
> +
>  </OpenGLAPI>
> diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c
> index d964f03..6160bb3 100644
> --- a/src/mesa/main/extensions.c
> +++ b/src/mesa/main/extensions.c
> @@ -222,6 +222,7 @@ static const struct extension extension_table[] = {
>     { "GL_EXT_blend_color",                         o(EXT_blend_color),                         GLL,            1995 },
>     { "GL_EXT_blend_equation_separate",             o(EXT_blend_equation_separate),             GL,             2003 },
>     { "GL_EXT_blend_func_separate",                 o(EXT_blend_func_separate),                 GLL,            1999 },
> +   { "GL_EXT_buffer_storage",                      o(ARB_buffer_storage),                                  ES2, 2015 },

ES31 here. Unlike for desktop GL, we tend to be more careful about
where we expose exts... esp because a bunch of drivers support
ARB_buffer_storage but won't be getting ES3.1 anytime soon... or ever.

>     { "GL_EXT_discard_framebuffer",                 o(dummy_true),                                    ES1 | ES2, 2009 },
>     { "GL_EXT_blend_minmax",                        o(EXT_blend_minmax),                        GLL | ES1 | ES2, 1995 },
>     { "GL_EXT_blend_subtract",                      o(dummy_true),                              GLL,            1995 },
> --
> 2.5.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list