[Mesa-dev] [Mesa-stable] [PATCH v2] mesa: etc2 online compression is unsupported, don't attempt it
Anuj Phogat
anuj.phogat at gmail.com
Mon Jul 11 17:40:45 UTC 2016
On Fri, Jul 8, 2016 at 5:29 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
> Cc: "11.2 12.0" <mesa-stable at lists.freedesktop.org>
> ---
>
> v1 -> v2: also include a mesa_is_etc2_format function which takes a GLenum.
>
> src/mesa/main/glformats.c | 23 +++++++++++++++++++++++
> src/mesa/main/glformats.h | 3 +++
> src/mesa/main/teximage.c | 1 +
> 3 files changed, 27 insertions(+)
>
> diff --git a/src/mesa/main/glformats.c b/src/mesa/main/glformats.c
> index 24ce7b0..90f525c 100644
> --- a/src/mesa/main/glformats.c
> +++ b/src/mesa/main/glformats.c
> @@ -907,6 +907,29 @@ _mesa_is_astc_format(GLenum internalFormat)
> }
>
> /**
> + * Test if the given format is an ETC2 format.
> + */
> +GLboolean
> +_mesa_is_etc2_format(GLenum internalFormat)
> +{
> + switch (internalFormat) {
> + case GL_COMPRESSED_RGB8_ETC2:
> + case GL_COMPRESSED_SRGB8_ETC2:
> + case GL_COMPRESSED_RGBA8_ETC2_EAC:
> + case GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:
> + case GL_COMPRESSED_R11_EAC:
> + case GL_COMPRESSED_RG11_EAC:
> + case GL_COMPRESSED_SIGNED_R11_EAC:
> + case GL_COMPRESSED_SIGNED_RG11_EAC:
> + case GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:
> + case GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:
> + return true;
> + default:
> + return false;
> + }
> +}
> +
> +/**
> * Test if the given format is an integer (non-normalized) format.
> */
> GLboolean
> diff --git a/src/mesa/main/glformats.h b/src/mesa/main/glformats.h
> index c73f464..474ede2 100644
> --- a/src/mesa/main/glformats.h
> +++ b/src/mesa/main/glformats.h
> @@ -61,6 +61,9 @@ extern GLboolean
> _mesa_is_astc_format(GLenum internalFormat);
>
> extern GLboolean
> +_mesa_is_etc2_format(GLenum internalFormat);
> +
> +extern GLboolean
> _mesa_is_type_unsigned(GLenum type);
>
> extern GLboolean
> diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
> index 26a6c21..81e46a1 100644
> --- a/src/mesa/main/teximage.c
> +++ b/src/mesa/main/teximage.c
> @@ -1307,6 +1307,7 @@ bool
> _mesa_format_no_online_compression(const struct gl_context *ctx, GLenum format)
> {
> return _mesa_is_astc_format(format) ||
> + _mesa_is_etc2_format(format) ||
> compressedteximage_only_format(ctx, format);
> }
>
> --
> 2.7.3
>
> _______________________________________________
> mesa-stable mailing list
> mesa-stable at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-stable
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
More information about the mesa-dev
mailing list