On Mon, Dec 10, 2018 at 10:17 AM Emil Velikov <emil.l.veli...@gmail.com> wrote: > > From: "Kristian H. Kristensen" <hoegsb...@gmail.com> > > There's a few missing and convoluted bits: > > - FramebufferTexture2DMultisampleEXT > Missing sanity check, should be desktop="false" > > - RenderbufferStorageMultisampleEXT > Missing sanity check, is aliased to RenderbufferStorageMultisample. > Thus it's set only when desktop GL or GLES2 v3.0+, while the extension > is GLES2 2.0+. > > If we flip the aliasing we'll break indirect GLX, so loosen the version > to 2.0. Not perfect, yet this is the most sane thing I could think of. > > v2: [Emil] Fixup RenderbufferStorageMultisampleEXT, commmit message
Ok, that looks good, thanks Emil. > > Cc: Kristian H. Kristensen <hoegsb...@gmail.com> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108974 > Fixes: 1b331ae505e ("mesa: Add core support for > EXT_multisampled_render_to_texture{,2}") > Reviewed-by: Emil Velikov <emil.veli...@collabora.com> > Signed-off-by: Emil Velikov <emil.veli...@collabora.com> > --- > src/mapi/glapi/gen/ARB_framebuffer_object.xml | 10 +++++++++- > .../glapi/gen/EXT_multisampled_render_to_texture.xml | 2 +- > src/mapi/glapi/gen/es_EXT.xml | 2 ++ > src/mapi/glapi/gen/gl_API.xml | 2 -- > src/mesa/main/tests/dispatch_sanity.cpp | 6 +++++- > 5 files changed, 17 insertions(+), 5 deletions(-) > > diff --git a/src/mapi/glapi/gen/ARB_framebuffer_object.xml > b/src/mapi/glapi/gen/ARB_framebuffer_object.xml > index bd0793c8ece..295175c8816 100644 > --- a/src/mapi/glapi/gen/ARB_framebuffer_object.xml > +++ b/src/mapi/glapi/gen/ARB_framebuffer_object.xml > @@ -172,7 +172,15 @@ > <glx rop="4318"/> > </function> > > - <function name="RenderbufferStorageMultisample" es2="3.0"> > +<!-- > + The EXT aliasee, as part of EXT_multisampled_render_to_texture can > + work on GLES 2.0. While the entry point below is only set when > + gl || (gles && version > 3.0) > + > + As such, the entrypoint will be noop, and calling it will do nothing. > + Workaround that by loosening the version to 2.0. > + --> > + <function name="RenderbufferStorageMultisample" es2="2.0"> > <param name="target" type="GLenum"/> > <param name="samples" type="GLsizei"/> > <param name="internalformat" type="GLenum"/> > diff --git a/src/mapi/glapi/gen/EXT_multisampled_render_to_texture.xml > b/src/mapi/glapi/gen/EXT_multisampled_render_to_texture.xml > index 555b008bd33..d76ecd47d0e 100644 > --- a/src/mapi/glapi/gen/EXT_multisampled_render_to_texture.xml > +++ b/src/mapi/glapi/gen/EXT_multisampled_render_to_texture.xml > @@ -20,7 +20,7 @@ > </function> > --> > > - <function name="FramebufferTexture2DMultisampleEXT" es2="2.0"> > + <function name="FramebufferTexture2DMultisampleEXT" es2="2.0" > desktop="false"> > <param name="target" type="GLenum"/> > <param name="attachment" type="GLenum"/> > <param name="textarget" type="GLenum"/> > diff --git a/src/mapi/glapi/gen/es_EXT.xml b/src/mapi/glapi/gen/es_EXT.xml > index bbc4a1a1118..917fed62f98 100644 > --- a/src/mapi/glapi/gen/es_EXT.xml > +++ b/src/mapi/glapi/gen/es_EXT.xml > @@ -810,6 +810,8 @@ > <enum name="RG8_EXT" value="0x822B"/> > </category> > > +<xi:include href="EXT_multisampled_render_to_texture.xml" > xmlns:xi="http://www.w3.org/2001/XInclude"/> > + > <!-- 111. GL_ANGLE_texture_compression_dxt --> > <category name="GL_ANGLE_texture_compression_dxt" number="111"> > <enum name="COMPRESSED_RGBA_S3TC_DXT3_ANGLE" value="0x83F2"/> > diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml > index f1def8090de..f4d0808f13b 100644 > --- a/src/mapi/glapi/gen/gl_API.xml > +++ b/src/mapi/glapi/gen/gl_API.xml > @@ -8175,8 +8175,6 @@ > > <xi:include href="ARB_robustness.xml" > xmlns:xi="http://www.w3.org/2001/XInclude"/> > > -<xi:include href="EXT_multisampled_render_to_texture.xml" > xmlns:xi="http://www.w3.org/2001/XInclude"/> > - > <xi:include href="ARB_base_instance.xml" > xmlns:xi="http://www.w3.org/2001/XInclude"/> > > <category name="GL_ARB_transform_feedback_instanced" number="109"> > diff --git a/src/mesa/main/tests/dispatch_sanity.cpp > b/src/mesa/main/tests/dispatch_sanity.cpp > index fb2acfbdeea..307639a4a4e 100644 > --- a/src/mesa/main/tests/dispatch_sanity.cpp > +++ b/src/mesa/main/tests/dispatch_sanity.cpp > @@ -2236,6 +2236,10 @@ const struct function gles2_functions_possible[] = { > /* GL_NV_conservative_raster_pre_snap_triangles */ > { "glConservativeRasterParameteriNV", 20, -1 }, > > + /* GL_EXT_multisampled_render_to_texture */ > + { "glRenderbufferStorageMultisampleEXT", 20, -1 }, > + { "glFramebufferTexture2DMultisampleEXT", 20, -1 }, > + > { NULL, 0, -1 } > }; > > @@ -2330,7 +2334,7 @@ const struct function gles3_functions_possible[] = { > // glProgramParameteri aliases glProgramParameteriEXT in GLES 2 > // We check for the aliased -NV version in GLES 2 > // { "glReadBuffer", 30, -1 }, > - { "glRenderbufferStorageMultisample", 30, -1 }, > + // glRenderbufferStorageMultisample aliases > glRenderbufferStorageMultisampleEXT in GLES 2 > { "glResumeTransformFeedback", 30, -1 }, > { "glSamplerParameterf", 30, -1 }, > { "glSamplerParameterfv", 30, -1 }, > -- > 2.19.2 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev