mesa: Replace MESA_FORMAT_L8A8/A8L8 UNORM/SNORM/SRGB with an array format.
authorEric Anholt <eric@anholt.net>
Thu, 5 Sep 2019 21:42:15 +0000 (14:42 -0700)
committerEric Anholt <eric@anholt.net>
Sun, 20 Oct 2019 04:39:48 +0000 (04:39 +0000)
The array format is what the GL API wants (fixing texbos on
big-endian), and matches directly to gallium's corresponding array
format.  The only driver exposing A8L8 was radeon/r200 in big-endian,
where the HW's underlying format was trying to read as array and we
needed to flip things around to make our packed format come out right
(note that while the radeon format tables had both AL and LA,
ChooseTextureFormat would only pick one of them based on endianness).

v2: Don't make r200/radeon use endian swaps.
v3: Rebase on dropping the r200 _be/_le format table removal patch
v4: reword commit message to explain why we can drop both formats
    from radeon.

Reviewed-by: Marek Olšák <marek.olsak@amd.com> (v1)
20 files changed:
src/mesa/drivers/dri/common/dri_util.c
src/mesa/drivers/dri/i915/i830_texstate.c
src/mesa/drivers/dri/i915/i915_context.c
src/mesa/drivers/dri/i915/i915_texstate.c
src/mesa/drivers/dri/i965/brw_surface_formats.c
src/mesa/drivers/dri/nouveau/nv04_surface.c
src/mesa/drivers/dri/r200/r200_tex.h
src/mesa/drivers/dri/radeon/radeon_tex.h
src/mesa/drivers/dri/radeon/radeon_texture.c
src/mesa/drivers/dri/radeon/radeon_texture.h
src/mesa/main/debug.c
src/mesa/main/formats.c
src/mesa/main/formats.csv
src/mesa/main/formats.h
src/mesa/main/texcompress_rgtc.c
src/mesa/main/texformat.c
src/mesa/main/teximage.c
src/mesa/state_tracker/st_format.c
src/mesa/swrast/s_texfetch.c
src/mesa/swrast/s_texfetch_tmp.h

index 55abacd6714564b0ed921b02c1968c762a16a559..28a01d334059470b84861dddd336dcfa18259e4e 100644 (file)
@@ -936,10 +936,12 @@ static const struct {
       .image_format = __DRI_IMAGE_FORMAT_GR88,
       .mesa_format  =        MESA_FORMAT_R8G8_UNORM,
    },
+#ifdef PIPE_ARCH_LITTLE_ENDIAN
    {
       .image_format = __DRI_IMAGE_FORMAT_GR88,
-      .mesa_format  =        MESA_FORMAT_L8A8_UNORM,
+      .mesa_format  =        MESA_FORMAT_LA_UNORM8,
    },
+#endif
    {
       .image_format = __DRI_IMAGE_FORMAT_SABGR8,
       .mesa_format  =        MESA_FORMAT_R8G8B8A8_SRGB,
index 83cd7336ec1288beada8b70fe5c4b865a8fd6ccb..d8f1026b818e2cc69adaa7c135dc83f5995cccc9 100644 (file)
@@ -47,7 +47,7 @@ translate_texture_format(GLuint mesa_format)
       return MAPSURF_8BIT | MT_8BIT_L8;
    case MESA_FORMAT_I_UNORM8:
       return MAPSURF_8BIT | MT_8BIT_I8;
-   case MESA_FORMAT_L8A8_UNORM:
+   case MESA_FORMAT_LA_UNORM8:
       return MAPSURF_16BIT | MT_16BIT_AY88;
    case MESA_FORMAT_B5G6R5_UNORM:
       return MAPSURF_16BIT | MT_16BIT_RGB565;
index 648430201270c09e0d05ddc0b7fc6147e99d9167..2e19e57ae6ce4f7fcf56ba52ac06a83c2b376df0 100644 (file)
@@ -118,7 +118,7 @@ intel_init_texture_formats(struct gl_context *ctx)
    if (intel->gen == 3)
       ctx->TextureFormatSupported[MESA_FORMAT_A_UNORM8] = true;
    ctx->TextureFormatSupported[MESA_FORMAT_I_UNORM8] = true;
-   ctx->TextureFormatSupported[MESA_FORMAT_L8A8_UNORM] = true;
+   ctx->TextureFormatSupported[MESA_FORMAT_LA_UNORM8] = true;
 
    /* Depth and stencil */
    if (intel->gen == 3) {
index f653f441ad81ba8b5719658f5ac5497ff2e06830..544aaa7209717dd3c816abd43f0ce25899554aff 100644 (file)
@@ -48,7 +48,7 @@ translate_texture_format(mesa_format mesa_format, GLenum DepthMode)
       return MAPSURF_8BIT | MT_8BIT_I8;
    case MESA_FORMAT_A_UNORM8:
       return MAPSURF_8BIT | MT_8BIT_A8;
-   case MESA_FORMAT_L8A8_UNORM:
+   case MESA_FORMAT_LA_UNORM8:
       return MAPSURF_16BIT | MT_16BIT_AY88;
    case MESA_FORMAT_B5G6R5_UNORM:
       return MAPSURF_16BIT | MT_16BIT_RGB565;
index 059b2f4bb620ccb5a76092e6102b26be16fd553f..6127ed8a4901ea20f977869c7f8350c350789fc3 100644 (file)
@@ -47,7 +47,7 @@ brw_isl_format_for_mesa_format(mesa_format mesa_format)
       [MESA_FORMAT_B5G6R5_UNORM] = ISL_FORMAT_B5G6R5_UNORM,
       [MESA_FORMAT_B4G4R4A4_UNORM] = ISL_FORMAT_B4G4R4A4_UNORM,
       [MESA_FORMAT_B5G5R5A1_UNORM] = ISL_FORMAT_B5G5R5A1_UNORM,
-      [MESA_FORMAT_L8A8_UNORM] = ISL_FORMAT_L8A8_UNORM,
+      [MESA_FORMAT_LA_UNORM8] = ISL_FORMAT_L8A8_UNORM,
       [MESA_FORMAT_LA_UNORM16] = ISL_FORMAT_L16A16_UNORM,
       [MESA_FORMAT_A_UNORM8] = ISL_FORMAT_A8_UNORM,
       [MESA_FORMAT_A_UNORM16] = ISL_FORMAT_A16_UNORM,
@@ -69,7 +69,7 @@ brw_isl_format_for_mesa_format(mesa_format mesa_format)
       [MESA_FORMAT_B8G8R8X8_SRGB] = ISL_FORMAT_B8G8R8X8_UNORM_SRGB,
       [MESA_FORMAT_R_SRGB8] = ISL_FORMAT_L8_UNORM_SRGB,
       [MESA_FORMAT_L_SRGB8] = ISL_FORMAT_L8_UNORM_SRGB,
-      [MESA_FORMAT_L8A8_SRGB] = ISL_FORMAT_L8A8_UNORM_SRGB,
+      [MESA_FORMAT_LA_SRGB8] = ISL_FORMAT_L8A8_UNORM_SRGB,
       [MESA_FORMAT_SRGB_DXT1] = ISL_FORMAT_BC1_UNORM_SRGB,
       [MESA_FORMAT_SRGBA_DXT1] = ISL_FORMAT_BC1_UNORM_SRGB,
       [MESA_FORMAT_SRGBA_DXT3] = ISL_FORMAT_BC2_UNORM_SRGB,
index b1f0ea0a983b9194b827db6ab6b35d939c82f99b..7fb2de15683490967ea848f2ce916babdbbe98dd 100644 (file)
@@ -50,8 +50,7 @@ swzsurf_format(mesa_format format)
        case MESA_FORMAT_B5G5R5A1_UNORM:
        case MESA_FORMAT_A1B5G5R5_UNORM:
        case MESA_FORMAT_A1R5G5B5_UNORM:
-       case MESA_FORMAT_L8A8_UNORM:
-       case MESA_FORMAT_A8L8_UNORM:
+       case MESA_FORMAT_LA_UNORM8:
        case MESA_FORMAT_YCBCR:
        case MESA_FORMAT_YCBCR_REV:
        case MESA_FORMAT_Z_UNORM16:
@@ -89,8 +88,7 @@ surf2d_format(mesa_format format)
        case MESA_FORMAT_B5G5R5A1_UNORM:
        case MESA_FORMAT_A1B5G5R5_UNORM:
        case MESA_FORMAT_A1R5G5B5_UNORM:
-       case MESA_FORMAT_L8A8_UNORM:
-       case MESA_FORMAT_A8L8_UNORM:
+       case MESA_FORMAT_LA_UNORM8:
        case MESA_FORMAT_YCBCR:
        case MESA_FORMAT_YCBCR_REV:
        case MESA_FORMAT_Z_UNORM16:
@@ -128,8 +126,7 @@ rect_format(mesa_format format)
        case MESA_FORMAT_B5G5R5A1_UNORM:
        case MESA_FORMAT_A1B5G5R5_UNORM:
        case MESA_FORMAT_A1R5G5B5_UNORM:
-       case MESA_FORMAT_L8A8_UNORM:
-       case MESA_FORMAT_A8L8_UNORM:
+       case MESA_FORMAT_LA_UNORM8:
        case MESA_FORMAT_YCBCR:
        case MESA_FORMAT_YCBCR_REV:
        case MESA_FORMAT_Z_UNORM16:
@@ -167,8 +164,7 @@ sifm_format(mesa_format format)
        case MESA_FORMAT_B5G5R5A1_UNORM:
        case MESA_FORMAT_A1B5G5R5_UNORM:
        case MESA_FORMAT_A1R5G5B5_UNORM:
-       case MESA_FORMAT_L8A8_UNORM:
-       case MESA_FORMAT_A8L8_UNORM:
+       case MESA_FORMAT_LA_UNORM8:
        case MESA_FORMAT_YCBCR:
        case MESA_FORMAT_YCBCR_REV:
        case MESA_FORMAT_Z_UNORM16:
index 14f5e71fadf91c8c05b0de6fa423a989e5fe7707..c13998df03b77da3354046449ecf3745b5b9416a 100644 (file)
@@ -73,10 +73,9 @@ static const struct tx_table tx_table_be[] =
    [ MESA_FORMAT_A4R4G4B4_UNORM ] = { R200_TXFORMAT_ARGB4444 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_B5G5R5A1_UNORM ] = { R200_TXFORMAT_ARGB1555 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_A1R5G5B5_UNORM ] = { R200_TXFORMAT_ARGB1555 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
-   [ MESA_FORMAT_L8A8_UNORM ] = { R200_TXFORMAT_AI88 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
-   [ MESA_FORMAT_A8L8_UNORM ] = { R200_TXFORMAT_AI88 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_A_UNORM8 ] = { R200_TXFORMAT_I8 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_L_UNORM8 ] = { R200_TXFORMAT_I8, 0 },
+   [ MESA_FORMAT_LA_UNORM8 ] = { R200_TXFORMAT_AI88 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_I_UNORM8 ] = { R200_TXFORMAT_I8 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_YCBCR ] = { R200_TXFORMAT_YVYU422, R200_YUV_TO_RGB },
    [ MESA_FORMAT_YCBCR_REV ] = { R200_TXFORMAT_VYUY422, R200_YUV_TO_RGB },
@@ -103,10 +102,9 @@ static const struct tx_table tx_table_le[] =
    [ MESA_FORMAT_A4R4G4B4_UNORM ] = { R200_TXFORMAT_ARGB4444 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_B5G5R5A1_UNORM ] = { R200_TXFORMAT_ARGB1555 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_A1R5G5B5_UNORM ] = { R200_TXFORMAT_ARGB1555 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
-   [ MESA_FORMAT_L8A8_UNORM ] = { R200_TXFORMAT_AI88 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
-   [ MESA_FORMAT_A8L8_UNORM ] = { R200_TXFORMAT_AI88 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_A_UNORM8 ] = { R200_TXFORMAT_I8 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_L_UNORM8 ] = { R200_TXFORMAT_I8, 0 },
+   [ MESA_FORMAT_LA_UNORM8 ] = { R200_TXFORMAT_AI88 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_I_UNORM8 ] = { R200_TXFORMAT_I8 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_YCBCR ] = { R200_TXFORMAT_YVYU422, R200_YUV_TO_RGB },
    [ MESA_FORMAT_YCBCR_REV ] = { R200_TXFORMAT_VYUY422, R200_YUV_TO_RGB },
index 37c2fa0dc2f373a327d05b4adb11163e82141fd3..a698040617e4f4f8e77ea323afb56ea4200fb40d 100644 (file)
@@ -72,8 +72,7 @@ static const struct tx_table tx_table[] =
    [ MESA_FORMAT_A4R4G4B4_UNORM ] = { RADEON_TXFORMAT_ARGB4444 | RADEON_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_B5G5R5A1_UNORM ] = { RADEON_TXFORMAT_ARGB1555 | RADEON_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_A1R5G5B5_UNORM ] = { RADEON_TXFORMAT_ARGB1555 | RADEON_TXFORMAT_ALPHA_IN_MAP, 0 },
-   [ MESA_FORMAT_L8A8_UNORM ] = { RADEON_TXFORMAT_AI88 | RADEON_TXFORMAT_ALPHA_IN_MAP, 0 },
-   [ MESA_FORMAT_A8L8_UNORM ] = { RADEON_TXFORMAT_AI88 | RADEON_TXFORMAT_ALPHA_IN_MAP, 0 },
+   [ MESA_FORMAT_LA_UNORM8 ] = { RADEON_TXFORMAT_AI88 | RADEON_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_A_UNORM8 ] = { RADEON_TXFORMAT_I8 | RADEON_TXFORMAT_ALPHA_IN_MAP, 0 },
    [ MESA_FORMAT_L_UNORM8 ] = { RADEON_TXFORMAT_I8, 0 },
    [ MESA_FORMAT_I_UNORM8 ] = { RADEON_TXFORMAT_I8 | RADEON_TXFORMAT_ALPHA_IN_MAP, 0 },
index f2d435a375f5437b8daed97a52e32841d6f6de02..bd03b9110d23787d0475ebea4424e4c6f8eaf8a2 100644 (file)
@@ -359,7 +359,7 @@ mesa_format radeonChooseTextureFormat(struct gl_context * ctx,
 #if defined(RADEON_R200)
                /* r200: can't use a8 format since interpreting hw I8 as a8 would result
                   in wrong rgb values (same as alpha value instead of 0). */
-               return _radeon_texformat_al88;
+               return MESA_FORMAT_LA_UNORM8;
 #else
                return MESA_FORMAT_A_UNORM8;
 #endif
@@ -381,7 +381,7 @@ mesa_format radeonChooseTextureFormat(struct gl_context * ctx,
        case GL_LUMINANCE12_ALPHA12:
        case GL_LUMINANCE16_ALPHA16:
        case GL_COMPRESSED_LUMINANCE_ALPHA:
-               return _radeon_texformat_al88;
+               return MESA_FORMAT_LA_UNORM8;
 
        case GL_INTENSITY:
        case GL_INTENSITY4:
@@ -464,7 +464,7 @@ mesa_format radeonChooseTextureFormat(struct gl_context * ctx,
        case GL_SLUMINANCE_ALPHA:
        case GL_SLUMINANCE8_ALPHA8:
        case GL_COMPRESSED_SLUMINANCE_ALPHA:
-      return MESA_FORMAT_L8A8_SRGB;
+      return MESA_FORMAT_LA_SRGB8;
 
        case GL_COMPRESSED_SRGB_S3TC_DXT1_EXT:
                return MESA_FORMAT_SRGB_DXT1;
@@ -596,7 +596,6 @@ mesa_format _radeon_texformat_argb8888 = MESA_FORMAT_NONE;
 mesa_format _radeon_texformat_rgb565 = MESA_FORMAT_NONE;
 mesa_format _radeon_texformat_argb4444 = MESA_FORMAT_NONE;
 mesa_format _radeon_texformat_argb1555 = MESA_FORMAT_NONE;
-mesa_format _radeon_texformat_al88 = MESA_FORMAT_NONE;
 /*@}*/
 
 
@@ -609,7 +608,6 @@ radeonInitTextureFormats(void)
       _radeon_texformat_rgb565         = MESA_FORMAT_B5G6R5_UNORM;
       _radeon_texformat_argb4444       = MESA_FORMAT_B4G4R4A4_UNORM;
       _radeon_texformat_argb1555       = MESA_FORMAT_B5G5R5A1_UNORM;
-      _radeon_texformat_al88           = MESA_FORMAT_L8A8_UNORM;
    }
    else {
       _radeon_texformat_rgba8888       = MESA_FORMAT_R8G8B8A8_UNORM;
@@ -617,7 +615,6 @@ radeonInitTextureFormats(void)
       _radeon_texformat_rgb565         = MESA_FORMAT_R5G6B5_UNORM;
       _radeon_texformat_argb4444       = MESA_FORMAT_A4R4G4B4_UNORM;
       _radeon_texformat_argb1555       = MESA_FORMAT_A1R5G5B5_UNORM;
-      _radeon_texformat_al88           = MESA_FORMAT_A8L8_UNORM;
    }
 }
 
index 286b2a20a3073ad7036d92e89bbffd37b9ec5900..8342796aa6cfa9a316e35a075e5a79717a98dbd2 100644 (file)
@@ -38,7 +38,6 @@ extern mesa_format _radeon_texformat_argb8888;
 extern mesa_format _radeon_texformat_rgb565;
 extern mesa_format _radeon_texformat_argb4444;
 extern mesa_format _radeon_texformat_argb1555;
-extern mesa_format _radeon_texformat_al88;
 
 extern 
 void copy_rows(void* dst, GLuint dststride, const void* src, GLuint srcstride,
index 6ff1abbe24fd35cba1b40d308c93aca2c69dda12..c27d1b80357d4b2d05101ae26a41e5da8c4cb240 100644 (file)
@@ -625,8 +625,7 @@ _mesa_print_texture(struct gl_context *ctx, struct gl_texture_image *img)
          case MESA_FORMAT_I_UNORM8:
             c = 1;
             break;
-         case MESA_FORMAT_L8A8_UNORM:
-         case MESA_FORMAT_A8L8_UNORM:
+         case MESA_FORMAT_LA_UNORM8:
             c = 2;
             break;
          case MESA_FORMAT_BGR_UNORM8:
index 31c63d6497b15e6a87e36d7c53ed02400a12431d..80f3048e11251d0d2ea5e5ed14e1be1594b3ff7d 100644 (file)
@@ -718,9 +718,9 @@ _mesa_get_uncompressed_format(mesa_format format)
    case MESA_FORMAT_L_LATC1_SNORM:
       return MESA_FORMAT_L_SNORM8;
    case MESA_FORMAT_LA_LATC2_UNORM:
-      return MESA_FORMAT_L8A8_UNORM;
+      return MESA_FORMAT_LA_UNORM8;
    case MESA_FORMAT_LA_LATC2_SNORM:
-      return MESA_FORMAT_L8A8_SNORM;
+      return MESA_FORMAT_LA_SNORM8;
    case MESA_FORMAT_ETC1_RGB8:
    case MESA_FORMAT_ETC2_RGB8:
    case MESA_FORMAT_ETC2_SRGB8:
@@ -946,8 +946,7 @@ _mesa_uncompressed_format_to_type_and_comps(mesa_format format,
       *comps = 2;
       return;
 
-   case MESA_FORMAT_L8A8_UNORM:
-   case MESA_FORMAT_A8L8_UNORM:
+   case MESA_FORMAT_LA_UNORM8:
    case MESA_FORMAT_R8G8_UNORM:
    case MESA_FORMAT_G8R8_UNORM:
       *datatype = GL_UNSIGNED_BYTE;
@@ -1070,8 +1069,7 @@ _mesa_uncompressed_format_to_type_and_comps(mesa_format format,
       *comps = 1;
       return;
    case MESA_FORMAT_R8G8_SNORM:
-   case MESA_FORMAT_L8A8_SNORM:
-   case MESA_FORMAT_A8L8_SNORM:
+   case MESA_FORMAT_LA_SNORM8:
       *datatype = GL_BYTE;
       *comps = 2;
       return;
@@ -1124,8 +1122,7 @@ _mesa_uncompressed_format_to_type_and_comps(mesa_format format,
       *datatype = GL_UNSIGNED_BYTE;
       *comps = 1;
       return;
-   case MESA_FORMAT_L8A8_SRGB:
-   case MESA_FORMAT_A8L8_SRGB:
+   case MESA_FORMAT_LA_SRGB8:
       *datatype = GL_UNSIGNED_BYTE;
       *comps = 2;
       return;
index f123ab2ba73268b5fac375c0a866c37994aff328..764134d25f5e27863993688df325889b8ba9733a 100644 (file)
@@ -70,8 +70,6 @@ MESA_FORMAT_X1B5G5R5_UNORM                , packed, 1, 1, 1, x1  , un5 , un5 , u
 MESA_FORMAT_B5G5R5A1_UNORM                , packed, 1, 1, 1, un5 , un5 , un5 , un1 , zyxw, rgb
 MESA_FORMAT_B5G5R5X1_UNORM                , packed, 1, 1, 1, un5 , un5 , un5 , x1  , zyx1, rgb
 MESA_FORMAT_A1R5G5B5_UNORM                , packed, 1, 1, 1, un1 , un5 , un5 , un5 , yzwx, rgb
-MESA_FORMAT_L8A8_UNORM                    , packed, 1, 1, 1, un8 , un8 ,     ,     , xxxy, rgb
-MESA_FORMAT_A8L8_UNORM                    , packed, 1, 1, 1, un8 , un8 ,     ,     , yyyx, rgb
 MESA_FORMAT_R8G8_UNORM                    , packed, 1, 1, 1, un8 , un8 ,     ,     , xy01, rgb
 MESA_FORMAT_G8R8_UNORM                    , packed, 1, 1, 1, un8 , un8 ,     ,     , yx01, rgb
 MESA_FORMAT_L4A4_UNORM                    , packed, 1, 1, 1, un4 , un4 ,     ,     , xxxy, rgb
@@ -104,6 +102,7 @@ MESA_FORMAT_A_UNORM8                      , array , 1, 1, 1, un8 ,     ,     ,
 MESA_FORMAT_A_UNORM16                     , array , 1, 1, 1, un16,     ,     ,     , 000x, rgb
 MESA_FORMAT_L_UNORM8                      , array , 1, 1, 1, un8 ,     ,     ,     , xxx1, rgb
 MESA_FORMAT_L_UNORM16                     , array , 1, 1, 1, un16,     ,     ,     , xxx1, rgb
+MESA_FORMAT_LA_UNORM8                     , array , 1, 1, 1, un8 , un8 ,     ,     , xxxy, rgb
 MESA_FORMAT_LA_UNORM16                    , array , 1, 1, 1, un16, un16,     ,     , xxxy, rgb
 MESA_FORMAT_I_UNORM8                      , array , 1, 1, 1, un8 ,     ,     ,     , xxxx, rgb
 MESA_FORMAT_I_UNORM16                     , array , 1, 1, 1, un16,     ,     ,     , xxxx, rgb
@@ -127,8 +126,6 @@ MESA_FORMAT_R16G16_SNORM                  , packed, 1, 1, 1, sn16, sn16,     ,
 MESA_FORMAT_G16R16_SNORM                  , packed, 1, 1, 1, sn16, sn16,     ,     , yx01, rgb
 MESA_FORMAT_R8G8_SNORM                    , packed, 1, 1, 1, sn8 , sn8 ,     ,     , xy01, rgb
 MESA_FORMAT_G8R8_SNORM                    , packed, 1, 1, 1, sn8 , sn8 ,     ,     , yx01, rgb
-MESA_FORMAT_L8A8_SNORM                    , packed, 1, 1, 1, sn8 , sn8 ,     ,     , xxxy, rgb
-MESA_FORMAT_A8L8_SNORM                    , packed, 1, 1, 1, sn8 , sn8 ,     ,     , yyyx, rgb
 
 # Array signed/normalized formats
 MESA_FORMAT_A_SNORM8                      , array , 1, 1, 1, sn8 ,     ,     ,     , 000x, rgb
@@ -139,6 +136,7 @@ MESA_FORMAT_I_SNORM8                      , array , 1, 1, 1, sn8 ,     ,     ,
 MESA_FORMAT_I_SNORM16                     , array , 1, 1, 1, sn16,     ,     ,     , xxxx, rgb
 MESA_FORMAT_R_SNORM8                      , array , 1, 1, 1, sn8 ,     ,     ,     , x001, rgb
 MESA_FORMAT_R_SNORM16                     , array , 1, 1, 1, sn16,     ,     ,     , x001, rgb
+MESA_FORMAT_LA_SNORM8                     , array , 1, 1, 1, sn8 , sn8 ,     ,     , xxxy, rgb
 MESA_FORMAT_LA_SNORM16                    , array , 1, 1, 1, sn16, sn16,     ,     , xxxy, rgb
 MESA_FORMAT_RGB_SNORM16                   , array , 1, 1, 1, sn16, sn16, sn16,     , xyz1, rgb
 MESA_FORMAT_RGBA_SNORM16                  , array , 1, 1, 1, sn16, sn16, sn16, sn16, xyzw, rgb
@@ -153,12 +151,11 @@ MESA_FORMAT_X8R8G8B8_SRGB                 , packed, 1, 1, 1, x8  , un8 , un8 , u
 MESA_FORMAT_R8G8B8A8_SRGB                 , packed, 1, 1, 1, un8 , un8 , un8 , un8 , xyzw, srgb
 MESA_FORMAT_R8G8B8X8_SRGB                 , packed, 1, 1, 1, un8 , un8 , un8 , x8  , xyz1, srgb
 MESA_FORMAT_X8B8G8R8_SRGB                 , packed, 1, 1, 1, x8  , un8 , un8 , un8 , wzy1, srgb
-MESA_FORMAT_L8A8_SRGB                     , packed, 1, 1, 1, un8 , un8 ,     ,     , xxxy, srgb
-MESA_FORMAT_A8L8_SRGB                     , packed, 1, 1, 1, un8 , un8 ,     ,     , yyyx, srgb
 
 # Array sRGB formats
 MESA_FORMAT_R_SRGB8                       , array , 1, 1, 1, un8 ,     ,     ,     , x001, srgb
 MESA_FORMAT_L_SRGB8                       , array , 1, 1, 1, un8 ,     ,     ,     , xxx1, srgb
+MESA_FORMAT_LA_SRGB8                      , array , 1, 1, 1, un8 , un8 ,     ,     , xxxy, srgb
 MESA_FORMAT_BGR_SRGB8                     , array , 1, 1, 1, un8 , un8 , un8 ,     , zyx1, srgb
 
 # Packed float formats
index d1ee8ab5cb6f7cae3f2d86484667cea2eced44a8..404447b7fc4608ff65191f71c38dc28d16427d91 100644 (file)
@@ -367,8 +367,6 @@ typedef enum
    MESA_FORMAT_B5G5R5A1_UNORM,                       /* ARRR RRGG GGGB BBBB */
    MESA_FORMAT_B5G5R5X1_UNORM,                       /* xRRR RRGG GGGB BBBB */
    MESA_FORMAT_A1R5G5B5_UNORM,                       /* BBBB BGGG GGRR RRRA */
-   MESA_FORMAT_L8A8_UNORM,                           /* AAAA AAAA LLLL LLLL */
-   MESA_FORMAT_A8L8_UNORM,                           /* LLLL LLLL AAAA AAAA */
    MESA_FORMAT_R8G8_UNORM,                           /* GGGG GGGG RRRR RRRR */
    MESA_FORMAT_G8R8_UNORM,                           /* RRRR RRRR GGGG GGGG */
    MESA_FORMAT_L4A4_UNORM,                                     /* AAAA LLLL */
@@ -402,7 +400,8 @@ typedef enum
    MESA_FORMAT_A_UNORM16,     /* ushort[i] = A */
    MESA_FORMAT_L_UNORM8,      /* ubyte[i] = L */
    MESA_FORMAT_L_UNORM16,     /* ushort[i] = L */
-   MESA_FORMAT_LA_UNORM16,     /* ushort[i * 2] = L, ushort[i*2+1] = A */
+   MESA_FORMAT_LA_UNORM8,     /* ubyte[i * 2] = L, ubyte[*2+1] = A */
+   MESA_FORMAT_LA_UNORM16,    /* ushort[i * 2] = L, ushort[i*2+1] = A */
    MESA_FORMAT_I_UNORM8,      /* ubyte[i] = I */
    MESA_FORMAT_I_UNORM16,     /* ushort[i] = I */
    MESA_FORMAT_R_UNORM8,      /* ubyte[i] = R */
@@ -427,8 +426,6 @@ typedef enum
    MESA_FORMAT_G16R16_SNORM,     /* RRRR RRRR RRRR RRRR GGGG GGGG GGGG GGGG */
    MESA_FORMAT_R8G8_SNORM,       /*                     GGGG GGGG RRRR RRRR */
    MESA_FORMAT_G8R8_SNORM,       /*                     RRRR RRRR GGGG GGGG */
-   MESA_FORMAT_L8A8_SNORM,       /*                     AAAA AAAA LLLL LLLL */
-   MESA_FORMAT_A8L8_SNORM,       /*                     LLLL LLLL AAAA AAAA */
 
    /* Array signed/normalized formats */
    MESA_FORMAT_A_SNORM8,      /* byte[i] = A */
@@ -439,6 +436,7 @@ typedef enum
    MESA_FORMAT_I_SNORM16,     /* short[i] = I */
    MESA_FORMAT_R_SNORM8,      /* byte[i] = R */
    MESA_FORMAT_R_SNORM16,     /* short[i] = R */
+   MESA_FORMAT_LA_SNORM8,     /* byte[i * 2] = L, [i * 2 + 1] = A */
    MESA_FORMAT_LA_SNORM16,    /* short[i * 2] = L, [i * 2 + 1] = A */
    MESA_FORMAT_RGB_SNORM16,   /* short[i*3] = R, [i*3+1] = G, [i*3+2] = B */
    MESA_FORMAT_RGBA_SNORM16,  /* ... */
@@ -453,12 +451,11 @@ typedef enum
    MESA_FORMAT_R8G8B8A8_SRGB,    /* AAAA AAAA BBBB BBBB GGGG GGGG RRRR RRRR */
    MESA_FORMAT_R8G8B8X8_SRGB,    /* xxxx xxxx BBBB BBBB GGGG GGGG RRRR RRRR */
    MESA_FORMAT_X8B8G8R8_SRGB,    /* RRRR RRRR GGGG GGGG BBBB BBBB xxxx xxxx */
-   MESA_FORMAT_L8A8_SRGB,                            /* AAAA AAAA LLLL LLLL */
-   MESA_FORMAT_A8L8_SRGB,                            /* LLLL LLLL AAAA AAAA */
    MESA_FORMAT_R_SRGB8,          /* RRRR RRRR */
 
    /* Array sRGB formats */
    MESA_FORMAT_L_SRGB8,       /* ubyte[i] = L */
+   MESA_FORMAT_LA_SRGB8,      /* ubyte[i*2] = L, [i*2+1] = A */
    MESA_FORMAT_BGR_SRGB8,     /* ubyte[i*3] = B, [i*3+1] = G, [i*3+2] = R */
 
    /* Packed float formats */
index 843b42e54e600aa0b1e193d9dceb1cf2d9cb8907..089646d4e9ba69c84f393618632074ecd747a5ea 100644 (file)
@@ -200,8 +200,7 @@ _mesa_texstore_rg_rgtc2(TEXSTORE_PARAMS)
       tempFormat = _mesa_little_endian() ? MESA_FORMAT_R8G8_UNORM
                                          : MESA_FORMAT_G8R8_UNORM;
    else
-      tempFormat = _mesa_little_endian() ? MESA_FORMAT_L8A8_UNORM
-                                         : MESA_FORMAT_A8L8_UNORM;
+      tempFormat = MESA_FORMAT_LA_UNORM8;
 
    rgRowStride = 2 * srcWidth * sizeof(GLubyte);
    tempImage = malloc(srcWidth * srcHeight * 2 * sizeof(GLubyte));
index 4c8ded7e211ae2958806573fc30ff940b39aa412..0968832889dfee7a644582113073465b3cad9cad 100644 (file)
@@ -162,14 +162,14 @@ _mesa_choose_tex_format(struct gl_context *ctx, GLenum target,
    case GL_ALPHA4:
    case GL_ALPHA8:
       RETURN_IF_SUPPORTED(MESA_FORMAT_A_UNORM8);
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_UNORM);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_UNORM8);
       break;
 
    case GL_ALPHA12:
    case GL_ALPHA16:
       RETURN_IF_SUPPORTED(MESA_FORMAT_A_UNORM16);
       RETURN_IF_SUPPORTED(MESA_FORMAT_A_UNORM8);
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_UNORM);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_UNORM8);
       break;
 
    /* Luminance formats */
@@ -189,21 +189,21 @@ _mesa_choose_tex_format(struct gl_context *ctx, GLenum target,
       /* Luminance/Alpha formats */
    case GL_LUMINANCE4_ALPHA4:
       RETURN_IF_SUPPORTED(MESA_FORMAT_L4A4_UNORM);
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_UNORM);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_UNORM8);
       break;
 
    case 2:
    case GL_LUMINANCE_ALPHA:
    case GL_LUMINANCE6_ALPHA2:
    case GL_LUMINANCE8_ALPHA8:
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_UNORM);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_UNORM8);
       break;
 
    case GL_LUMINANCE12_ALPHA4:
    case GL_LUMINANCE12_ALPHA12:
    case GL_LUMINANCE16_ALPHA16:
       RETURN_IF_SUPPORTED(MESA_FORMAT_LA_UNORM16);
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_UNORM);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_UNORM8);
       break;
 
    case GL_INTENSITY:
@@ -233,13 +233,13 @@ _mesa_choose_tex_format(struct gl_context *ctx, GLenum target,
 
    case GL_COMPRESSED_ALPHA_ARB:
       RETURN_IF_SUPPORTED(MESA_FORMAT_A_UNORM8);
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_UNORM);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_UNORM8);
       break;
    case GL_COMPRESSED_LUMINANCE_ARB:
       RETURN_IF_SUPPORTED(MESA_FORMAT_L_UNORM8);
       break;
    case GL_COMPRESSED_LUMINANCE_ALPHA_ARB:
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_UNORM);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_UNORM8);
       break;
    case GL_COMPRESSED_INTENSITY_ARB:
       RETURN_IF_SUPPORTED(MESA_FORMAT_I_UNORM8);
@@ -409,8 +409,7 @@ _mesa_choose_tex_format(struct gl_context *ctx, GLenum target,
       break;
    case GL_LUMINANCE_ALPHA_SNORM:
    case GL_LUMINANCE8_ALPHA8_SNORM:
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_SNORM);
-      RETURN_IF_SUPPORTED(MESA_FORMAT_A8L8_SNORM);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_SNORM8);
       RETURN_IF_SUPPORTED(MESA_FORMAT_A8B8G8R8_SNORM);
       RETURN_IF_SUPPORTED(MESA_FORMAT_R8G8B8A8_SNORM);
       break;
@@ -488,8 +487,7 @@ _mesa_choose_tex_format(struct gl_context *ctx, GLenum target,
       break;
    case GL_SLUMINANCE_ALPHA_EXT:
    case GL_SLUMINANCE8_ALPHA8_EXT:
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_SRGB);
-      RETURN_IF_SUPPORTED(MESA_FORMAT_A8L8_SRGB);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_SRGB8);
       RETURN_IF_SUPPORTED(MESA_FORMAT_B8G8R8A8_SRGB);
       RETURN_IF_SUPPORTED(MESA_FORMAT_A8R8G8B8_SRGB);
       break;
@@ -499,8 +497,7 @@ _mesa_choose_tex_format(struct gl_context *ctx, GLenum target,
       RETURN_IF_SUPPORTED(MESA_FORMAT_A8R8G8B8_SRGB);
       break;
    case GL_COMPRESSED_SLUMINANCE_ALPHA_EXT:
-      RETURN_IF_SUPPORTED(MESA_FORMAT_L8A8_SRGB);
-      RETURN_IF_SUPPORTED(MESA_FORMAT_A8L8_SRGB);
+      RETURN_IF_SUPPORTED(MESA_FORMAT_LA_SRGB8);
       RETURN_IF_SUPPORTED(MESA_FORMAT_B8G8R8A8_SRGB);
       RETURN_IF_SUPPORTED(MESA_FORMAT_A8R8G8B8_SRGB);
       break;
index 5b6afcfa985dfec1780862b6ddfb43b378796aef..77e57e6d250e7994e0a2eb9e2a672e18480ae095 100644 (file)
@@ -6006,7 +6006,7 @@ _mesa_get_texbuffer_format(const struct gl_context *ctx, GLenum internalFormat)
       case GL_LUMINANCE32UI_EXT:
          return MESA_FORMAT_L_UINT32;
       case GL_LUMINANCE8_ALPHA8:
-         return MESA_FORMAT_L8A8_UNORM;
+         return MESA_FORMAT_LA_UNORM8;
       case GL_LUMINANCE16_ALPHA16:
          return MESA_FORMAT_LA_UNORM16;
       case GL_LUMINANCE_ALPHA16F_ARB:
index 462e93ff1d0b6c183715e146da7def536f596c83..aa293ac5195e6c04a1593083d9bcd1ca8ff918cc 100644 (file)
@@ -105,10 +105,6 @@ st_mesa_format_to_pipe_format(const struct st_context *st,
       return PIPE_FORMAT_R10G10B10X2_UNORM;
    case MESA_FORMAT_L4A4_UNORM:
       return PIPE_FORMAT_L4A4_UNORM;
-   case MESA_FORMAT_L8A8_UNORM:
-      return PIPE_FORMAT_LA88_UNORM;
-   case MESA_FORMAT_A8L8_UNORM:
-      return PIPE_FORMAT_AL88_UNORM;
    case MESA_FORMAT_A_UNORM8:
       return PIPE_FORMAT_A8_UNORM;
    case MESA_FORMAT_A_UNORM16:
@@ -117,6 +113,8 @@ st_mesa_format_to_pipe_format(const struct st_context *st,
       return PIPE_FORMAT_L8_UNORM;
    case MESA_FORMAT_L_UNORM16:
       return PIPE_FORMAT_L16_UNORM;
+   case MESA_FORMAT_LA_UNORM8:
+      return PIPE_FORMAT_L8A8_UNORM;
    case MESA_FORMAT_LA_UNORM16:
       return PIPE_FORMAT_L16A16_UNORM;
    case MESA_FORMAT_I_UNORM8:
@@ -161,12 +159,10 @@ st_mesa_format_to_pipe_format(const struct st_context *st,
       return PIPE_FORMAT_DXT3_SRGBA;
    case MESA_FORMAT_SRGBA_DXT5:
       return PIPE_FORMAT_DXT5_SRGBA;
-   case MESA_FORMAT_L8A8_SRGB:
-      return PIPE_FORMAT_LA88_SRGB;
-   case MESA_FORMAT_A8L8_SRGB:
-      return PIPE_FORMAT_AL88_SRGB;
    case MESA_FORMAT_L_SRGB8:
       return PIPE_FORMAT_L8_SRGB;
+   case MESA_FORMAT_LA_SRGB8:
+      return PIPE_FORMAT_L8A8_SRGB;
    case MESA_FORMAT_R_SRGB8:
       return PIPE_FORMAT_R8_SRGB;
    case MESA_FORMAT_BGR_SRGB8:
@@ -383,10 +379,8 @@ st_mesa_format_to_pipe_format(const struct st_context *st,
       return PIPE_FORMAT_A8_SNORM;
    case MESA_FORMAT_L_SNORM8:
       return PIPE_FORMAT_L8_SNORM;
-   case MESA_FORMAT_L8A8_SNORM:
-      return PIPE_FORMAT_LA88_SNORM;
-   case MESA_FORMAT_A8L8_SNORM:
-      return PIPE_FORMAT_AL88_SNORM;
+   case MESA_FORMAT_LA_SNORM8:
+      return PIPE_FORMAT_L8A8_SNORM;
    case MESA_FORMAT_I_SNORM8:
       return PIPE_FORMAT_I8_SNORM;
 
@@ -697,10 +691,8 @@ st_pipe_format_to_mesa_format(enum pipe_format format)
       return MESA_FORMAT_R10G10B10X2_UNORM;
    case PIPE_FORMAT_L4A4_UNORM:
       return MESA_FORMAT_L4A4_UNORM;
-   case PIPE_FORMAT_LA88_UNORM:
-      return MESA_FORMAT_L8A8_UNORM;
-   case PIPE_FORMAT_AL88_UNORM:
-      return MESA_FORMAT_A8L8_UNORM;
+   case PIPE_FORMAT_L8A8_UNORM:
+      return MESA_FORMAT_LA_UNORM8;
    case PIPE_FORMAT_L16A16_UNORM:
       return MESA_FORMAT_LA_UNORM16;
    case PIPE_FORMAT_A8_UNORM:
@@ -759,12 +751,10 @@ st_pipe_format_to_mesa_format(enum pipe_format format)
       return MESA_FORMAT_SRGBA_DXT3;
    case PIPE_FORMAT_DXT5_SRGBA:
       return MESA_FORMAT_SRGBA_DXT5;
-   case PIPE_FORMAT_LA88_SRGB:
-      return MESA_FORMAT_L8A8_SRGB;
-   case PIPE_FORMAT_AL88_SRGB:
-      return MESA_FORMAT_A8L8_SRGB;
    case PIPE_FORMAT_L8_SRGB:
       return MESA_FORMAT_L_SRGB8;
+   case PIPE_FORMAT_L8A8_SRGB:
+      return MESA_FORMAT_LA_SRGB8;
    case PIPE_FORMAT_R8_SRGB:
       return MESA_FORMAT_R_SRGB8;
    case PIPE_FORMAT_R8G8B8_SRGB:
@@ -976,10 +966,8 @@ st_pipe_format_to_mesa_format(enum pipe_format format)
       return MESA_FORMAT_A_SNORM8;
    case PIPE_FORMAT_L8_SNORM:
       return MESA_FORMAT_L_SNORM8;
-   case PIPE_FORMAT_LA88_SNORM:
-      return MESA_FORMAT_L8A8_SNORM;
-   case PIPE_FORMAT_AL88_SNORM:
-      return MESA_FORMAT_A8L8_SNORM;
+   case PIPE_FORMAT_L8A8_SNORM:
+      return MESA_FORMAT_LA_SNORM8;
    case PIPE_FORMAT_I8_SNORM:
       return MESA_FORMAT_I_SNORM8;
 
index 1fe5e21162a92ed421178d4289c330d701c69123..db5a956ab28f67a44af920aa99ea9aa7ae069012 100644 (file)
@@ -141,8 +141,6 @@ texfetch_funcs[] =
    FETCH_FUNCS(A1B5G5R5_UNORM),
    FETCH_FUNCS(B5G5R5A1_UNORM),
    FETCH_FUNCS(A1R5G5B5_UNORM),
-   FETCH_FUNCS(L8A8_UNORM),
-   FETCH_FUNCS(A8L8_UNORM),
    FETCH_FUNCS(R8G8_UNORM),
    FETCH_FUNCS(G8R8_UNORM),
    FETCH_FUNCS(L4A4_UNORM),
@@ -173,6 +171,7 @@ texfetch_funcs[] =
    FETCH_FUNCS(A_UNORM16),
    FETCH_FUNCS(L_UNORM8),
    FETCH_FUNCS(L_UNORM16),
+   FETCH_FUNCS(LA_UNORM8),
    FETCH_FUNCS(LA_UNORM16),
    FETCH_FUNCS(I_UNORM8),
    FETCH_FUNCS(I_UNORM16),
@@ -191,19 +190,18 @@ texfetch_funcs[] =
    FETCH_FUNCS(R8G8B8A8_SNORM),
    FETCH_FUNCS(R16G16_SNORM),
    FETCH_FUNCS(R8G8_SNORM),
-   FETCH_FUNCS(L8A8_SNORM),
-   FETCH_FUNCS(A8L8_SNORM),
 
    /* Array signed/normalized formats */
    FETCH_FUNCS(A_SNORM8),
    FETCH_FUNCS(A_SNORM16),
    FETCH_FUNCS(L_SNORM8),
    FETCH_FUNCS(L_SNORM16),
+   FETCH_FUNCS(LA_SNORM8),
+   FETCH_FUNCS(LA_SNORM16),
    FETCH_FUNCS(I_SNORM8),
    FETCH_FUNCS(I_SNORM16),
    FETCH_FUNCS(R_SNORM8),
    FETCH_FUNCS(R_SNORM16),
-   FETCH_FUNCS(LA_SNORM16),
    FETCH_FUNCS(RGB_SNORM16),
    FETCH_FUNCS(RGBA_SNORM16),
 
@@ -214,12 +212,11 @@ texfetch_funcs[] =
    FETCH_FUNCS(R8G8B8A8_SRGB),
    FETCH_FUNCS(R8G8B8X8_SRGB),
    FETCH_FUNCS(X8B8G8R8_SRGB),
-   FETCH_FUNCS(L8A8_SRGB),
-   FETCH_FUNCS(A8L8_SRGB),
 
    /* Array sRGB formats */
    FETCH_FUNCS(R_SRGB8),
    FETCH_FUNCS(L_SRGB8),
+   FETCH_FUNCS(LA_SRGB8),
    FETCH_FUNCS(BGR_SRGB8),
 
    /* Packed float formats */
index 72bb13498afa7e89efee61912ff14605a68eecb0..f31167a83e74b30fcfebca04fa12b52c22f25aa8 100644 (file)
@@ -131,10 +131,9 @@ FETCH_RGBA(R10G10B10A2_UNORM, GLuint, 1)
 FETCH_RGBA(R8G8_UNORM, GLushort, 1)
 FETCH_RGBA(G8R8_UNORM, GLushort, 1)
 FETCH_RGBA(L4A4_UNORM, GLubyte, 1)
-FETCH_RGBA(L8A8_UNORM, GLushort, 1)
 FETCH_RGBA(R_UNORM8, GLubyte, 1)
 FETCH_RGBA(R_UNORM16, GLushort, 1)
-FETCH_RGBA(A8L8_UNORM, GLushort, 1)
+FETCH_RGBA(LA_UNORM8, GLubyte, 2)
 FETCH_RGBA(R16G16_UNORM, GLuint, 1)
 FETCH_RGBA(G16R16_UNORM, GLuint, 1)
 FETCH_RGBA(B2G3R3_UNORM, GLubyte, 1)
@@ -154,8 +153,7 @@ FETCH_RGBA(R8G8B8X8_SRGB, GLuint, 1)
 FETCH_RGBA(X8B8G8R8_SRGB, GLuint, 1)
 FETCH_RGBA(R_SRGB8, GLubyte, 1)
 FETCH_RGBA(L_SRGB8, GLubyte, 1)
-FETCH_RGBA(L8A8_SRGB, GLushort, 1)
-FETCH_RGBA(A8L8_SRGB, GLushort, 2)
+FETCH_RGBA(LA_SRGB8, GLubyte, 2)
 FETCH_RGBA(RGBA_SINT8, GLbyte, 4)
 FETCH_RGBA(RGBA_SINT16, GLshort, 4)
 FETCH_RGBA(RGBA_SINT32, GLint, 4)
@@ -167,8 +165,7 @@ FETCH_RGBA(A_SNORM8, GLbyte, 1)
 FETCH_RGBA(L_SNORM8, GLbyte, 1)
 FETCH_RGBA(I_SNORM8, GLbyte, 1)
 FETCH_RGBA(R8G8_SNORM, GLshort, 1)
-FETCH_RGBA(L8A8_SNORM, GLshort, 1)
-FETCH_RGBA(A8L8_SNORM, GLshort, 1)
+FETCH_RGBA(LA_SNORM8, GLbyte, 2)
 FETCH_RGBA(X8B8G8R8_SNORM, GLint, 1)
 FETCH_RGBA(A8B8G8R8_SNORM, GLint, 1)
 FETCH_RGBA(R8G8B8A8_SNORM, GLint, 1)